Kniga-Online.club

Андрей Попов - Windows Script Host для Windows 2000/XP

Читать бесплатно Андрей Попов - Windows Script Host для Windows 2000/XP. Жанр: Программное обеспечение издательство -, год 2004. Так же читаем полные версии (весь текст) онлайн без регистрации и SMS на сайте kniga-online.club или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
Перейти на страницу:

//Создаем объект WshShell

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

//Создаем объект FileSystemObject

FSO = WScript.CreateObject("Scripting.FileSystemObject");

//Создаем объект WshSpecialFolders

WshFldrs=WshShell.SpecialFolders;

//Определяем путь к папке выборочной автозагрузки

SHomePath=WshFldrs.item("MyDocuments");

Путь к каталогу, в который будет производиться копирование документов, формируется с помощью переменной среды %UserName%; значение такой переменной извлекается c помощью метода ExpandEnvironmentStrings() объекта WshShell:

//Определяем имя пользователя

SUserName=WshShell.ExpandEnvironmentStrings("%UserName%");

//Формируем полный путь к каталогу с резервными копиями документов

//пользователя

SBackupPath+=SUserName;

Копирование документов мы будем производить только после утвердительного ответа пользователя на соответствующий вопрос (см. рис. 11.21):

//Запрос на создание резервной копии

Res=WshShell.Popup("Выполнить резервное копирование документов вn" + SBackupPath + " ?", 0, "Выход пользователя " + SUserName, vbQuestion+vbYesNo);

Рис. 11.21. Диалоговое окно с запросом о необходимости копирования

Если пользователь согласен, мы копируем нужный каталог с помощью метода CopyFolder(), причем делаем это внутри блока try конструкции try…catch.

IsError=false;

try {

 //Производим копирование каталога

В FSO.CopyFolder(SHomePath,SBackupPath);

}

В случае возникновения ошибки переменной IsError в блоке catch присваивается значение true, а на экран выводится диалоговое окно с соответствующим сообщением (см. рис. 11.22):

catch (е) { //Обрабатываем возможные ошибки

В if (Рµ != 0) {

  //Выводим сообщение об ошибке

В В IsError=true;

  Mess="Ошибка при копировании каталога "+SHomePath+"nКод ошибки: " + е.number + "nОписание: " + е.description;

  WshShell.Popup(Mess, 0, "Выход пользователя " + SUserName, vbCritical);

В }

}

Рис. 11.22. Диалоговое окно с сообщением о возникшей ошибке

Если же в процессе копирования ошибок не возникло (переменная IsError равна false), то пользователю также выдается сообщение об этом (см. рис. 11.23):

if (!IsError) {

 //Производим копирование каталога

В FSO.CopyFolder(SHomePath, SBackupPath);В 

В //Р’СЃРµ РІ РїРѕСЂСЏРґРєРµ

 Mess = "Копирование документов произведено";

 WshShell.Popup(Mess, 0, "Выход пользователя " + SUserName, vbInformation);

}

Рис. 11.23. Диалоговое окно с сообщением о возникшей ошибке

Полностью текст сценария Logoff.js приведен в листинге 11.12.

Листинг 11.12. JScript-сценарий выхода, позволяющий производить резервное копирование документов пользователя

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

/* РРјСЏ: Logoff.jsВ В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В  */

/* Язык: JScript                                                    */

/* Описание: Сценарий выхода, позволяющий производить резервное     */

/*           копирование документов пользователя                    */

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

//Объявляем переменные

var

 WshShell,                   //Экземпляр объекта WshShell

 WshFldrs,                   //Экземпляр объекта WshSpecialFolders

 FSO,                        //Экземпляр объекта FileSystemObject

 SUserDocPath,               //Путь к папке с документами пользователя

В SUserName,В В В В В В В В В В В В В В В В В  //РРјСЏ пользователя

 SBackupPath="D:\Backup\", //Каталог для резервных копий документов

В Res,IsError;

//Рнициализируем константы для диалоговых РѕРєРѕРЅ

var vbYesNo=4,vbQuestion=32,vbInformation=64,vbYes=6,vbOkOnly=0,

В vbCritical=16;

//Создаем объект WshShell

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

//Создаем объект FileSystemObject

FSO = WScript.CreateObject("Scripting.FileSystemObject");

//Создаем объект WshSpecialFolders

WshFldrs=WshShell.SpecialFolders;

//Определяем путь к папке выборочной автозагрузки

SHomePath=WshFldrs.item("MyDocuments");

//Определяем имя пользователя

SUserName=WshShell.ExpandEnvironmentStrings("%UserName%");

//Формируем полный путь к каталогу с резервными копиями документов

//пользователя

SBackupPath+=SUserName;

//Запрос на создание резервной копии

Res=WshShell.Popup("Выполнить резервное копирование документов вn"+

 SBackupPath+" ?", 0, "Выход пользователя "+SUserName, vbQuestion+vbYesNo);

if (Res==vbYes) { //Нажата кнопка Да

В IsError=false;

В try {

  //Производим копирование каталога

В  FSO.CopyFolder(SHomePath,SBackupPath);

 } catch (e) {  //Обрабатываем возможные ошибки

В  if (e != 0) {

   //Выводим сообщение об ошибке

В В  IsError=true;

   Mess="Ошибка при копировании каталога "+SHomePath+"nКод ошибки: "+

    e.number+"nОписание: "+e.description;

   WshShell.Popup(Mess,0,"Выход пользователя "+SUserName,vbCritical);

В  }

В }

В if (!IsError)В  {

В  //Р’СЃРµ РІ РїРѕСЂСЏРґРєРµ

  Mess="Копирование документов произведено";

  WshShell.Popup(Mess,0,"Выход пользователя "+SUserName,vbInformation);

В }

}

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

Вызов системных функций и стандартных диалоговых окон оболочки Windows

РР· сценариев WSH можно выводить РЅР° экран стандартные диалоговые РѕРєРЅР° Windows (например, Выполнить (Run)) Рё модули панели управления (например, Установка даты Рё времени (Date/Time)). Для этого используются системные функции Windows (API-функции) Рё объект Shell.Application, который позволяет получить доступ Рє оболочке Windows.

Перейти на страницу:

Андрей Попов читать все книги автора по порядку

Андрей Попов - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки kniga-online.club.


Windows Script Host для Windows 2000/XP отзывы

Отзывы читателей о книге Windows Script Host для Windows 2000/XP, автор: Андрей Попов. Читайте комментарии и мнения людей о произведении.


Уважаемые читатели и просто посетители нашей библиотеки! Просим Вас придерживаться определенных правил при комментировании литературных произведений.

  • 1. Просьба отказаться от дискриминационных высказываний. Мы защищаем право наших читателей свободно выражать свою точку зрения. Вместе с тем мы не терпим агрессии. На сайте запрещено оставлять комментарий, который содержит унизительные высказывания или призывы к насилию по отношению к отдельным лицам или группам людей на основании их расы, этнического происхождения, вероисповедания, недееспособности, пола, возраста, статуса ветерана, касты или сексуальной ориентации.
  • 2. Просьба отказаться от оскорблений, угроз и запугиваний.
  • 3. Просьба отказаться от нецензурной лексики.
  • 4. Просьба вести себя максимально корректно как по отношению к авторам, так и по отношению к другим читателям и их комментариям.

Надеемся на Ваше понимание и благоразумие. С уважением, администратор kniga-online.


Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*