Реализовать немедленное окно для vbscript

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

Желаемая функция:

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

E.g.

i = 1

j = i+2

[Точка останова]

k = 3

При достижении точки останова немедленное окно должно отображать i=1 , j=3

Любой способ получить переменные во время выполнения из кода vbscript?


person Jaskaran    schedule 26.04.2015    source источник


Ответы (1)


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

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

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

Active Scripting API: добавьте мощную настраиваемую отладку в ваше приложение для размещения скриптов

См. 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.

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

person Trigger    schedule 26.04.2015
comment
Любой способ сделать это с помощью С#? - person Jaskaran; 26.04.2015
comment
Да, но спросите об этом людей C#. Это просто COM-интерфейсы. Та статья как образец отладчика и IDE в MFC. - person Trigger; 27.04.2015