Методы и свойства объекта WshShell
Объект WshShell служит для работы с переменными среды Windows, специальными папками, запускает другие программы, создает ярлыки и т.д. Для его использования его необходимо создать методом CreateObject.
Set WshShell = CreateObject("WScript.Shell")
Информация о системе
Переменные среды́или переменные окружения (англ. environment variables) — текстовые переменные операционной системы, хранящие данные о ряде настроек системы.
Переменные среды Microsoft Windows делятся на две категории:
- Переменные среды пользователя — указывают путь до пользовательских директорий.
- Системные переменные — хранят данные о некоторых директориях операционной системы и конфигурации компьютера.
Список переменных среды Windows можно узнать, набрав в командной строке: set или нажав кнопку «Переменные среды» на вкладке «Дополнительно» в диалоговом окне «Свойства системы» («Мой компьютер»→«Свойства»).
Свойство Environment объекта WshShell, позволяет работать с системными переменными среды. Для этого создается объект WshEnvironment
Синтаксис:
WshShell.Environment([strType])
где
strType – может принимать параметры "System", "User", "Volatile" или "Process" .
Значение “Volatile" используется для работы с данными, передаваемыми другими программами, а "System", "User" и "Process" используются для работы с системными данными.
Таблица системных данных среды, доступных с помощью значений "System", "User" и "Process"
Значение | Описание | Где присутствует | ||
System | User | Process | ||
NUMBER_OF_PROCESSORS | Количество процессоров на данном компьютере | X | - | X |
PROCESSOR_ARCHITECTURE | Тип процессора | X | - | X |
PROCESSOR_IDENTIFIER | Расширенные данные о процессоре | X | - | X |
PROCESSOR_LEVEL | Поколение процессора | X | - | X |
OS | Операционная система | X | - | X |
COMSPEC | Путь к файлу командной строки (cmd.exe или command.com) | X | - | X |
HOMEPATH | Каталог по умолчанию для пользователей | X | ||
HOMEDRIVE | Первый локальный диск (обычно С:) | - | - | X |
PATH | Заданные системные пути | X | X | X |
PATHEXT | Исполняемые файлы (.exe , .com и т.д.) | X | - | X |
SYSTEMDRIVE | Диск на котором находится директория с операционной системой | - | - | X |
SYSTEMROOT | Директория Windows | - | - | X |
WINDIR | Директория Windows | X | - | X |
TEMP или TMP | Папка для временных файлов | - | X | X |
Объект 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 - исполняемая команда