实现vbscript的即时窗口

时间:2015-04-26 15:47:56

标签: c# vbscript immediate-window msscriptcontrol

我已经使用C#实现了一个调试器。它使用MSSCRIPT.ocx作为vbscript引擎。 任何人都可以告诉我如何在其中实现即时窗口功能。

所需功能:

应显示所有可用变量及其值:

E.g。

i = 1

j = i+2

[断点]

k = 3

在点击断点时,立即窗口应显示i = 1,j = 3

有什么方法可以在运行时从vbscript代码中获取变量吗?

1 个答案:

答案 0 :(得分:4)

MSScript包装了一大堆接口。

  

SUMMARYActive Scripting是一个功能强大的工具,用于向自定义应用程序添加宏功能等高级功能。这就需要为添加脚本的新功能提供集成调试服务。为了满足这一需求,Microsoft提供了一组COM接口,用于从Active Scripting框架内开发调试服务。

     

本文说明了如何使用Active Scripting框架中发布的调试服务来创建功能齐全的脚本调试器,该调试器可以提供大量调试操作,包括设置断点,调用堆栈查看,变量浏览,立即窗口查看,线程枚举和应用程序枚举。

活动脚本API:为您的脚本托管应用程序添加强大的自定义调试

请参阅https://msdn.microsoft.com/en-us/magazine/cc301316.aspx

以及1000万个接口。 https://msdn.microsoft.com/en-us/library/6dy78b76(v=vs.94).aspx

这就是使用脚本控件的帮助。

  

为了使主机的实现尽可能灵活,提供了一个用于Windows脚本的OLE自动化包装器。但是,使用此包装器对象实例化脚本引擎的主机不具有对运行时名称空间,持久性模型等的控制程度,如果它直接使用Windows脚本的话。

话虽如此,您可以添加自己的代码来进行eval并在想象中在脚本中执行。