Активизация отладчика

Активизация отладчика

Активизировать отладчик при работе со сценариями можно несколькими способами.

Во-первых, внутри JScript- или VBScript-сценариев можно вставить специальные операторы (debugger для JScript и Stop для VBScript) и выполнить сценарий с параметром //D. Для примера рассмотрим сценарий ForDebug.js, содержимое которого приведено в листинге П3.1.

Листинг П3.1. JScript-сценарий для отладки в Microsoft Script Debugger

/*******************************************************************/

/* Имя: ForDebug.js                                                */

/* Язык: JScript                                                   */

/* Описание: Сценарий для отладки в Microsoft Script Debugger      */

/*******************************************************************/

var s;

function MyFunc() {

 WScript.Echo("Функция MyFunc()");

}

WScript.Echo("Это сообщение выведется до запуска отладчика");

debugger;

s="A это сообщение появится ";

s+="уже в отладчике";

WScript.Echo(s);

MyFunc();

/************* Конец *********************************************/

Запустим этот сценарий из командной строки следующим образом:

wscript.exe //D ForDebug.js

Тогда сначала нам будет выведено диалоговое окно со строкой "Это сообщение выведется до запуска отладчика", а после нажатия в этом окне кнопки OK запустится отладчик, и управление передастся ему (рис. П3.27). Далее выполнения сценария может производиться в отладчике (см. следующий раздел).

Замечание

Файл со сценарием в отладчике доступен только для чтения.

Рис. П3.27. Активизация отладчика с помощью параметра //D и специальных операторов

Второй путь активизации отладчика состоит в использовании параметра //X при выполнении сценария:

wscript.exe //X ForDebug.js

При этом отладчик запускается сразу, с первой строки сценария (рис. П3.28).

Рис. П3.28. Активизация отладчика с помощью параметра //Х

Режим отладки WS-файлов зависит от значения атрибута debug в инструкции <?job?> (см. главу 3).Для примера рассмотрим WS-файл ForDebug.wsf, содержимое которого приведено в листинге П3.2.

Листинг П3.2. WS-файл для отладки в Microsoft Script Debugger

<job id="Encoded">

 <?job debug="true"?>

 <runtime>

  <description>

  Имя: ForDebug.wsf

  Описание: WS-файл для отладки в Microsoft Script Debugger

  </description>

 </runtime>

 <script language="JScript">

 WScript.Echo("Это сообщение выведется до запуска отладчика");

 debugger;

 WScript.Echo("А это сообщение появится уже в отладчике");

 </script>

</job>

Так как значение атрибута debug равно true, то оператор debugger передаст управление отладчику, причем, в отличие от одиночного сценария, WS-файл можно запускать как с ключами //D или //X, так и без них.

Если же изменить в сценарии ForDebug.wsf инструкцию <?job?> следующим образом:

<?job debug="false"?>

то отладка будет отключена, причем независимо от использования ключей //D и //X при запуске сценария (это может понадобиться при эксплуатировании в рабочем режиме WS-файла, содержащего операторы debug или Stop).