2015-04-26 4 views
2

Я реализовал отладчик с использованием C#. Он использует MSSCRIPT.ocx как движок vbscript. Может ли кто-нибудь сказать мне, как я могу реализовать функцию немедленного окна.Внедрить немедленное окно для vbscript

Желаемая Характеристика:

Если Показать все доступные переменные вместе с их значениями:

Э.Г.

i = 1 

j = i+2 

[Break Point]

k = 3 

На достижении точки останова, немедленное окно должно отображаться = 1, J = 3

Любой способ выборки переменных во время выполнения из кода VBScript?

ответ

4

MSScript обертывает целую кучу интерфейсов.

SUMMARYActive Scripting - мощный инструмент для добавления дополнительных функций, таких как возможности макросов для пользовательских приложений. Это создает потребность в интегрированных службах отладки для новых функций, добавленных с помощью скриптов. Чтобы решить эту проблему, Microsoft предоставила набор COM-интерфейсов для разработки служб отладки в рамках Active Scripting.

В данной статье показано, как использовать службы отладки, опубликованные в рамках активного сценария, для создания полнофункционального отладчика сценариев, который может обеспечивать множество действий по отладке, включая установку контрольных точек, просмотр стека вызовов, просмотр переменных, просмотр в непосредственном окне , перечисление потоков и перечисление приложений.

Active Scripting API-интерфейсы: Добавить мощный пользовательский Debugging в скрипт-хостинг App

См https://msdn.microsoft.com/en-us/magazine/cc301316.aspx

и 10 миллионов интерфейсов. https://msdn.microsoft.com/en-us/library/6dy78b76(v=vs.94).aspx

И вот что говорит об использовании управления скриптом.

Чтобы сделать реализацию узла максимально гибкой, предоставляется оболочка OLE Automation для сценария Windows. Тем не менее, хост, который использует этот объект-оболочку для создания экземпляра механизма сценариев, не обладает степенью контроля над пространством имен во время выполнения, моделью сохранения и т. Д., Если бы он напрямую использовал Windows Script.

Сказав это, вы можете добавить свой собственный код для выполнения eval и выполнить в своем скрипте с фантазией.

+0

Любой способ сделать это с помощью C#? – Jaskaran

+0

Да, но спросите людей C#. Это просто интерфейсы COM. Эта статья как образец отладчика и IDE в MFC. – Trigger

+0

@ Ekkehard.Horner – Jaskaran