Script Editor — программа, входящая в состав Microsoft Office 2000/ХР. В ней имеется функция выделения цветом элементов JScript-, VBScript- и WS-сценариев, а также поддерживается автоматическое завершение ввода ключевых слов.
Aditor — условно-бесплатный редактор файлов текстового формата, который позволяет запускать изменяемые сценарии, не выходя из режима редактирования, а также поддерживает выделение цветом ключевых слов языков JScript и VBScript. Aditor можно загрузить с http://aditor.swrus.com/.
UltraEdit-32 — условно-бесплатный редактор текстовых файлов, обладающий, в целом, теми же возможностями, что и Aditor. Может быть загружен с http://www.ultraedit.com/.
Отладка сценариев в Microsoft Script Debugger
Если при выполнении сценариев возникают ошибки или получаются непредвиденные результаты, можно воспользоваться специальным отладчиком для трассировки сценария и проверки значений переменных. Мы в качестве такого отладчика рассмотрим программу Microsoft Script Debugger, версии которой для различных операционных систем можно бесплатно получить с сайта Microsoft (http://msdn.microsoft.com/scripting). Этот отладчик позволяет работать со сценариями, которые встроены в HTML- или ASP-файлы, а также со сценариями Windows Script Host.
Активизация отладчика
Активизировать отладчик при работе со сценариями можно несколькими способами.
Во-первых, внутри JScript- или VBScript-сценариев можно вставить специальные операторы (debugger
для JScript и Stop
для VBScript) и выполнить сценарий с параметром //D. Для примера рассмотрим сценарий ForDebug.js, содержимое которого приведено в листинге П3.1.
/*******************************************************************/
/* Имя: 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?>
<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
).