Студопедия КАТЕГОРИИ: АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Методы и свойства объекта WshShell
В работе Объект WshShell служит для работы с переменными окружения Windows, специальными папками, запускает другие программы, создает ярлыки и т.д. Для его использования его необходимо создать методом CreateObject. Set WshShell = CreateObject(“WScript.Shell”)
Информация о системе
Объект WshShellСвойство Environment объекта WshShell, позволяет работать с системными переменными окружения. Для этого создается объект WshEnvironment Синтаксис: WshShell.Environment([strType]) где strType – может принимать параметры "System", "User", "Volatile" или "Process" . Значение “Volatile" используется для работы с данными, передаваемыми другими программами, а "System", "User" и "Process" используются для работы с системными данными. Таблица системных данных среды, доступных с помощью значений "System", "User" и "Process"
ОбъектEnvironment, как и все коллекции WSH, имеет свойство Count, в котором хранится число элементов коллекции, и метод Item. Следующий пример выводит на экран некоторые системные данные VBScript: 'создаемобъект WshShell: Set WshShell = WScript.CreateObject("WScript.Shell") 'создаем объект Environment со значением PROCESS: Set WshProEnv = WshShell.Environment("PROCESS") SysInfo = "Системные параметры компьютера:" + Chr(10)+ Chr(10) SysInfo = SysInfo + "Процессоров: " + _ WshProEnv("NUMBER_OF_PROCESSORS") + Chr(10) SysInfo = SysInfo + "Директория Windows: " + _ WshProEnv("WINDIR") + Chr(10) SysInfo = SysInfo + "Временнаяпапка: " + WshProEnv("TEMP") + Chr(10) MsgBox SysInfo
Запуск приложений
С помощью метода Run объекта WshShell мы можем запускать другие приложения. Синтаксис: object.Run (strCommand, [intWindowStyle], [bWaitOnReturn]) где object - объект WshShell strCommand - исполняемая команда Особенностью синтаксиса данного метода является то, что при использовании всех параметров скобки ( ) опускаются. Необязательные параметры: intWindowStyle - стиль окна запускаемого приложения bWaitOnReturn - может принимать значение true или false, указывающее, следует ли сценарию дожидаться окончания выполнения запущенного приложения. true - выполнение сценария приостанавливается до тех пор, пока не будет закрыто запущенное приложение. false - не дожидаться. Значения, принимаемые параметром intWindowStyle:
Метод Run не может вызвать приложение, если оно расположено в папке, путь к которой содержит пробелы. В этом случае путь надо заключить в тройные кавычки. В качестве примера, с помощью метода Run запустим программу Блокнот, с загруженным вызывающим сценарием. Dim WshShell 'Создаем объект WshShell: Set WshShell = WScript.CreateObject("WScript.Shell") 'Вызываем Блокнот и добавляем к нему в качестве параметра 'путь исполняемого сценария: WshShell.Run ("%windir%\notepad " &WScript.ScriptFullName)
Специальные папки Windows Для получения пути к специальным папкам Windows типа Мои документы, Рабочий стол и т.д. используется свойство SpecialFolders объекта WshShell. Синтаксис: object.SpecialFolders(objWshSpecialFolders) где object - объект WshShell; objWshSpecialFolders – специальная папка.
Кроме вышеперечисленных папок в Windows 2000 доступны: AllUsersDesktop, AllUsersStartMenu, AllUsersPrograms, и AllUsersStartup. Для перебора всех элементов коллекции можно применять операторы цикла For или ForEach ...In, указав имя коллекции WshShell.SpecialFolders. Свойство Count содержит количество элементов в коллекции. В качестве примера составим сценарий, узнающий адрес папки “Рабочего стола”. Dim WshShell, DesktopPath Set WshShell = CreateObject("WScript.Shell") 'получаем путь к рабочему столу: DesktopPath = WshShell.SpecialFolders("Desktop") MsgBox "Адрес рабочего стола: " + DesktopPat
Создание ярлыков Для создания ярлыков используется метод CreateShortcut Синтаксис: object.CreateShortcut(strPathname) где object - объект WshShell strPathname - имя и полный путь к ресурсу, для которого создается ярлык (например, это может быть файл, интернет-адрес и т.д.). Для демонстрации метода CreateShortcut создадим на нашем рабочем столе ярлык блокнота. В самом процессе создания ярлыка можно выделить несколько этапов: 1. Собственно создание ярлыка. 2. Установка его свойств. 3. Сохранения ярлыка с установленными свойствами Начнем с первого пункта создадим ярлык на рабочем столе
Dim WshShell, DesktopPath, Nshortcut 'Создаемобъект WshShell: Set WshShell = CreateObject(“WScript.Shell”) 'получаем путь к нашему рабочему столу: DesktopPath = WshShell.SpecialFolders(“Desktop”) 'создаемярлык: Set NShortcut = WshShell.CreateShortcut(DesktopPath & “\Блокнот.lnk”)
На втором этапе мы должны установить следующие свойства ярлыка, такие как: TargetPath – имя ресурса на который ссылается ярлык. WindowStyle – стиль запускаемого окна. Может принимать следующие значения: 1 – открыть как обычное окно; 3 – раскрыть на весь экран; 7 – запустить в свернутом виде. HotKey – устанавливает клавиши быстрого вызова IconLocation – расположение иконки ярлыка, файлы .exe и .dll могут содержать несколько значков, номера которых начинаются с 0. Можно использовать библиотеки значков, например Moricons.dll или Shell32.dll, находящиеся в папке Windows или во вложенной папке \System.Можно также присвоить путь для .bmp .ico-файла. Description – всплывающая подсказка (комментарий) WorkingDirectory – устанавливает рабочий каталог, который приложение использует для хранения временных и других файлов.
И, на самом последнем этапе создания ярлыка, мы сохраняем установленные свойства и сам ярлык методом Save. Таким образом, наш сценарий полностью будет иметь следующий вид: VBScript: Dim WshShell, DesktopPath, Nshortcut 'Создаемобъект WshShell: Set WshShell = CreateObject(“WScript.Shell”) 'получаем путь к нашему рабочему столу: DesktopPath = WshShell.SpecialFolders(“Desktop”) 'создаемярлык: Set NShortcut = WshShell.CreateShortcut(DesktopPath & “\Блокнот.lnk”) 'С помощью функции API "%windir%" получаем путь к папке 'WINDOWS и Блокноту и помещаем полученный путь в 'TargetPath: NShortcut.TargetPath = "%windir%\notepad.exe" 'Устанавливаем обычный стиль окна: NShortcut.WindowStyle = 1 'Клавиши быстрого вызова: NShortcut.Hotkey = "CTRL+ALT+f" 'Путь к файлу иконки: NShortcut.IconLocation = "notepad.exe, 0" 'Устанавливаем всплывающую подсказку: NShortcut.Description = "Ярлык блокнота" 'Устанавливаем в качестве рабочей папки - Рабочий стол: NShortcut.WorkingDirectory = DesktopPath 'Сохраняем настройки и сам ярлык: NShortcut.Save
Кроме ярлыков к локальным ресурсам можно создавать ярлыки Интернета. Создадим ярлык адреса компании Microsoft.
DimWshShell, UrlLink SetWshShell = WScript.CreateObject("WScript.Shell") Set UrlLink = WshShell.CreateShortcut("Microsoft.URL") UrlLink.TargetPath = "http://www.microsoft.com" UrlLink.Save |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2018-04-12; просмотров: 552. stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда... |