Выбрать главу

WScript.Echo("Каталог Windows:"+WS.ExpandEnvironmentStrings("%WinDir%"));

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

Метод LogEvent

В Windows NT/2000/XP события записываются в системном журнале, а в Windows 9х — в файле WSH.log, расположенном в каталоге пользователей Windows. Запись в WSH.log будет содержать время события, его тип и текст. Типы сообщений описаны в табл. 1.9.

Таблица 1.9. Типы сообщений (параметр intType)

Код Значение Код Значение
0 SUCCESS 4 INFORMATION
1 ERROR 8 AUDIT_SUCCESS
2 WARNING 16 AUDIT_FAILURE

В следующем примере производится протоколирование работы сценария регистрации (здесь предполагается, что если этот сценарий отработал успешно, то функция RunLoginScript возвращает true, в противном случае — false):

var WshShell = WScript.CreateObject("WScript.Shell");

rc = RunLoginScript();

if (rc) WshShell.LogEvent(0,"Logon Script Completed Successfully");

else WshShell.LogEvent(1,"Logon Script failed");

Метод Popup

Если в методе не задан параметр strTitle, то по умолчанию заголовком окна будет "Windows Script Host."

Параметр nType может принимать те же значения, что и в функции MessageBox из Microsoft Win32 API. В табл. 1.10 описаны некоторые возможные значения параметра nType и их смысл (полный список значений этого параметра можно посмотреть в описании функции MessageBox в документации по функциям Windows API).

Таблица 1.10. Типы кнопок и иконок для метода Popup

Значение nType Константа Visual Basic Описание
0 vbOkOnly Выводится кнопка OK
1 vbOkCancel Выводятся кнопки OK и Отмена (Cancel)
2 vbAbortRetryIgnore Выводятся кнопки Стоп (Abort), Повтор (Retry) и Пропустить (Ignore)
3 vbYesNoCancel Выводятся кнопки Да (Yes), Нет (No) и Отмена (Cancel)
4 vbYesNo Выводятся кнопки Да (Yes) и Нет (No)
5 vbRetryCancel Выводятся кнопки Повтор (Retry) и Отмена (Cancel)
16 vbCritical Выводится значок Stop Mark
32 vbQuestion Выводится значок Question Mark
48 vbExclamation Выводится значок Exclamation Mark
64 vbInformation Выводится значок Information Mark
Замечание

В сценариях, написанных на языке VBScript, можно непосредственно использовать именованные константы типа vbOkCancel без предварительного их объявления. Для того чтобы использовать такие константы в JScript-сценариях, их нужно предварительно объявить как переменные и присвоить нужные значения (например, var vbOkCancel=1;). Естественно, в любых сценариях вместо имен констант можно использовать их числовые значения.

В методе Popup можно комбинировать значения параметра, приведенные в табл. 1.10. Например, в результате выполнения следующего сценария:

var WshShell = WScript.CreateObject("WScript.Shell");

WshShell.Popup("Копирование завершено успешно", 5, "Ура",65);

на экран будет выведено информационное окно, показанное на рис. 1.11, которое автоматически закроется через 5 секунд.