//Создаем объект WshSpecialFolders
WshFldrs = WshShell.SpecialFolders;
//Формируем строки с путями к конкретным специальным папкам
s="Некоторые специальные папки:\n\n";
s+="Desktop:\t"+WshFldrs("Desktop")+"\n";
s+="Favorites:\t"+WshFldrs("Favorites")+"\n";
s+="Programs:\t"+WshFldrs("Programs");
WScript.Echo(s); //Выводим сформированные строки на экран
/************* Конец *********************************************/
Реализация того же сценария на языке VBScript приведена в листинге 2.41.
Листинг 2.41. Доступ к определенным специальным папкам (VBScript)
'******************************************************************
' Имя: SpecFold2.vbs
' Язык: VBScript
' Описание: Вывод названий заданных специальных папок Windows
'******************************************************************
Option Explicit
Dim WshShell, WshFldrs, s ' Объявляем переменные
' Создаем объект WshShell
Set WshShell = WScript.CreateObject("Wscript.Shell")
' Создаем объект WshSpecialFolders
Set WshFldrs = WshShell.SpecialFolders
' Формируем строки с путями к конкретным специальным папкам
s="Некоторые специальные папки:" & vbCrLf & vbCrLf
s=s+"Desktop:"+WshFldrs("Desktop") & vbCrLf
s=s+"Favorites:"+WshFldrs("Favorites") & vbCrLf
s=s+"Programs:"+WshFldrs("Programs")
WScript.Echo s ' Выводим сформированные строки на экран
'************* Конец *********************************************/
Создание ярлыков в специальных папках
Для того чтобы из сценария создать ярлык в специальной папке (рабочий стол, меню Пуск(Start) и т.п.) или изменить свойства уже существующего ярлыка, необходимо:
1. Используя коллекцию WshSpecialFolders, узнать путь к нужной специальной папке.
2. С помощью метода CreateShortcutобъекта WshShellсоздать объект WshShortcut( WshUrlShortcut) для связи с ярлыком в этой папке.
3. Задать или изменить свойства ярлыка с помощью соответствующих методов объекта WshShortcut( WshUrlShortcut).
4. Сохранить ярлык с помощью метода Save объекта WshShortcut (WshUrlShortcut).
Объект WshShortcutпредоставляет доступ к следующим свойствам ярлыков (рис. 2.17):
□ Объект(Target);
□ Рабочая папка(Start in);
□ Быстрый вызов(Shortcut key);
□ Окно(Run);
□ Комментарий(Comment).
Кроме этого, с помощью объекта WshShortcutможно сменить значок, который соответствует ярлыку.
Рис. 2.17.Свойства ярлыка в Windows ХР
Остальных свойств, имеющихся у ярлыков в Windows ХР, объект WshShortcutне поддерживает (например, нельзя установить или сбросить флажок, позволяющий запускать процесс в отдельном адресном пространстве или под другой учетной записью пользователя).
В качестве примера ниже приведен сценарий Shortcut.js (листинг 2.42), в котором создается ярлык "Мой ярлык.lnk" на Блокнот (notepad.exe), причем этот ярлык может быть сохранен либо в меню Программы(Programs) работающего пользователя, либо на его рабочем столе. Выбор специальной папки в сценарии производится с помощью диалогового окна, которое создается методом Popupобъекта WshShell(рис. 2.18).
Рис. 2.18.Диалоговое окно для выбора специальной папки
Рис. 2.10.Свойства ярлыка "Мой ярлык.lnk"
Для создаваемого ярлыка выбирается значок из файла Shell32.dll, находящегося в подкаталоге System каталога Windows (в Windows 95/98 этот файл находится в подкаталоге System), назначается комбинация горячих клавиш ++ и устанавливается максимизированный тип окна (рис. 2.19).
Листинг 2.42. Доступ к определенным специальным папкам (JScript)
/*****************************************************************/
/* Имя: Shortcut.js */
/* Язык: JScript */
/* Описание: Создание ярлыков в специальных папках */
/*****************************************************************/
//Объявляем переменные
Читать дальше