![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Определение позиции источника скрипта в JScript для отслеживания вызовов методовDelphi , Технологии , ActiveXВопрос, поднятый пользователем, касается возможности определения текущей позиции исполнения скрипта в JScript, когда вызываются методы объектов, экспонируемых скриптовому хосту. Это может быть необходимо для отладки и трассировки вызовов методов, а также для получения информации о месте вызова, аналогичной той, что доступна при обработке ошибок скрипта в веб-сайтах. ПроблемаПользователь столкнулся с необходимостью отслеживания вызовов методов своих объектов из JScript. Ему требуется определить, в каком месте скрипта был сделан вызов, чтобы получить информацию о номере строки, символе и cookie, который был передан в КонтекстВ контексте рассматривается реализация IActiveScriptSite, IActiveScriptSiteDebug и IActiveScriptSiteInterruptPoll в собственном скриптовом хосте. Пользователь использует только JScript-движок в качестве внешнего COM-объекта, что важно для решения задачи. Альтернативный ответ и комментарииПользователь рассмотрел возможность добавления отладочных утилит в свой скриптовый хост, но столкнулся с проблемой, что для этого требуется COM-объект "process debug manager", который существует только при установке Visual Studio или MS Script Debugger. Он также упомянул, что нашел код, который может дать полный стек вызовов без номеров строк, но это не решает его задачу полностью. Подтвержденный ответДля решения поставленной задачи можно использовать следующий подход:
Вот примерный код на Object Pascal (Delphi), который может быть использован в качестве основы для реализации
Обратите внимание, что для полной реализации необходимо обработать все методы интерфейса ЗаключениеТаким образом, для определения позиции источника скрипта в JScript и отслеживания вызовов методов необходимо реализовать интерфейс Пользователь хочет реализовать отслеживание вызовов методов в JScript для получения информации о позиции исполнения скрипта, включая номер строки и символ, без использования генерации ошибок. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |