1

Тема: WSH: Как можно отладить код, используемый в объекте MSScriptControl?

Как можно отладить код, используемый в объекте MSScriptControl ?
Например, из 1С

    Скрипт=СоздатьОбъект("MSScriptControl.ScriptControl");
    Скрипт.language="vbscript";
    Скрипт.AddCode(ТекстМодуля);    
    Скрипт.Run("setObj", ЭтотОбъект);

Как можно отладить код из «текстМодуля»?

2

Re: WSH: Как можно отладить код, используемый в объекте MSScriptControl?

Нужно использовать объект Скрипт.Error.

3

Re: WSH: Как можно отладить код, используемый в объекте MSScriptControl?

Подробнее,плиз, расскажи.

4

Re: WSH: Как можно отладить код, используемый в объекте MSScriptControl?

Вот пример кода

code = [
    'While True', 
        'X = 1 / Rnd', 
        'Y = 1 / Rnd', 
    'Wend', 
].join('\n');

var vb = new ActiveXObject('MSScriptControl.ScriptControl');
vb.language = 'VBScript';
try
{
vb.addcode(code);
}
catch (e)
{
 WScript.Echo(vb.Error.Line);
}

5

Re: WSH: Как можно отладить код, используемый в объекте MSScriptControl?

И что? где отладка-то? это просто показ ошибочных строк.
А мне бы хотелось реальной отладки, в МС Скрипт Едитор, например.

6

Re: WSH: Как можно отладить код, используемый в объекте MSScriptControl?

Пока мысли ведут к динамическом создании файла WSF c контентом, предназначенным для ScriptControl, причем WSF c параметром дебага.  Если требуется связь скрипт-контрола с основным потоком, то нужно использовать GlobalObject для обмена данными между процессами.

7

Re: WSH: Как можно отладить код, используемый в объекте MSScriptControl?

WSF не всегда работает, например, на новых системах Win7, Win2008 не всегда регистрируются
Но мысль интересная