- WScript
- FileSystemObject
- Drive
- File
- Folder
- TextStream
- Shell
- Application
- Parent
- AddToRecent()
- BrowseForFolder()
- CanStartStopService()
- CascadeWindows()
- ControlPanelItem()
- Explore()
- ExplorerPolicy()
- FileRun()
- FindComputer()
- FindFiles()
- FindPrinter()
- GetSetting()
- GetSystemInformation()
- Help()
- IsRestricted()
- IsServiceRunning()
- MinimizeAll()
- NameSpace()
- Open()
- SearchCommand()
- ServiceStart()
- ServiceStop()
- SetTime()
- ShellExecute()
- ShowBrowserBar()
- ShutdownWindows()
- TileHorizontally()
- TileVertically()
- ToggleDesktop
- TrayProperties()
- UndoMinimizeAll()
- Windows()
- WindowsSecurity()
- Объект ShellWindows
- ShellSpecialFolderConstants
- WshNetwork
- WshShell
- Wsh[Url]Shortcut
- WshScriptExec
- ADOStreamObject
- HTA
- CMD
- uconv
- Enumerator
- Источник
Объект Shell
Объект Shell позволяет получить доступ к различным настройкам Windows при помощи технологий COM
и Automation
, что позволяет использовать JScript и VBScript. Например, можно получить доступ к различным диалоговым окнам, к файловой системе, запускать программы и изменять системные настройки.
Создать объект Shell можно следующим образом:
var objShellApp = WScript.CreateObject("Shell.Application")
Также можно использовать объект ActiveXObject
языка JScript:
var objShellApp = new ActiveXObject("Shell.Application")
Свойства | |
Application | Возвращает объект IShellDispatch для текущего приложения. |
Parent | Возвращает объект IShellDispatch для родительского приложения |
Методы | |
AddToRecent | Помещает ярлык на указанный файл в папку "Недавних документов". |
BrowseForFolder | Вызов модального окна "Выбор папки". |
CanStartStopService | Определяет может ли текущий пользователь запустить/остановить указанный сервис. |
CascadeWindows | Выполняет расположение всех несвёрнутых окон рабочего стола Windows каскадом |
ControlPanelItem | Вызов конкретного приложения панели управления. |
Explore | Запускает проводник Windows с определённой открытой папкой. |
ExplorerPolicy | Возвращает значение указанной Internet Explorer policy |
FileRun | Вызов окна "Запуск программы" |
FindComputer | Вызов окна проводника Windows "Результаты поиска - компьютеры" |
FindFiles | Вызов окна проводника Windows "Результаты поиска" |
FindPrinter | Вызов окна "Поиск принтеров" ("Find Printers") в Active Directory |
GetSetting | Возвращает значение указанной глобальной установки (параметра) проводника |
GetSystemInformation | Возвращает некоторую системную информацию |
Help | Вызов окна справки Windows. |
IsRestricted | ВВозвращает значение заданного ограничения по данным реестра |
IsServiceRunning | Определяет, запущен ли указанный сервис. |
MinimizeAll | Сворачивает все окна рабочего стола Windows. |
NameSpace | Получение объекта виртуальной папки проводника |
Open | Запускает проводник Windows с определённой открытой папкой. |
SearchCommand | Отображает панель службы поиска. |
ServiceStart | Запускает указанный сервис. |
ServiceStop | Останавливает указанный сервис. |
SetTime | Вызов окна настройки времени и даты. |
ShellExecute | Выполняет указанное действие над заданным файлом. |
ShowBrowserBar | Открывает или закрывает указанную панель обозревателя. |
ShutdownWindows | Вызов окна выключения и перезагрузки компьютера. . |
TileHorizontally | Упорядочивает окна рабочего стола Windows по горизонтали. |
TileVertically | Упорядочивает окна рабочего стола Windows по вертикали |
ToggleDesktop | Сворачивает или разворачивает все окна на рабочем столе. |
TrayProperties | Вызов окна свойств панели задач Windows. |
UndoMinimizeAll | Восстанавливает всех свёрнутые окна рабочего стола Windows |
Windows | Получение объекта "ShellWindows". |
WindowsSecurity | Имитирует нажатие CTRL+ALT+DELETE. |
Application
Синтаксис
// Свойство. Только чтение. objShellApp.Application
Возвращаемое значение
Объект IShellDispatch
для текущего приложения.
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); if (objShellApp.Application.GetSetting(1) == 0) WScript.Echo ( "В «Свойствах папки» в проводнике установлен режим «Не показывать скрытые файлы и папки»" ); else WScript.Echo ( "В «Свойствах папки» в проводнике установлен режим «Показывать скрытые файлы и папки»" );
Parent
Синтаксис
// Свойство. Только чтение. objShellApp.Parent
Возвращаемое значение
Объект IShellDispatch
для родительского приложения, если такой имеется.
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); if (objShellApp.Parent.GetSetting(262144) == 0) WScript.Echo ( "В «Свойствах папки» в проводнике установлен режим «Не скрывать защищенные файлы операционной системы»." ); else WScript.Echo ( "В «Свойствах папки» в проводнике установлен режим «Скрывать защищенные файлы операционной системы»." );
AddToRecent()
Метод AddToRecent() помещает ярлык на указанный файл в папку "Недавних документов" ("Recent") текущего пользователя. Возвращаемого значения нет.
Синтаксис
objShellApp.AddToRecent( File, Category )
Параметры
- File
- Строка. Путь к файлу.
- Category
- Строка (необязательный). Имя категории, в которую помещается файл.
Пример (WindowsXP):
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.AddToRecent ("C:\MyFile.txt");
BrowseForFolder()
Метод BrowseForFolder() вызов модального окна "Выбор папки". Возвращает объект "Folder".
Синтаксис
objShellApp.BrowseForFolder( Hwnd, Заголовок, Опции, КорневаяПапка )
Параметры
- Hwnd
- Дескриптор родительского окна. Тип - целое число. 0 - текущее окно.
- Заголовок
- Пояснение для пользователя в окне "Выбор папки". Тип - строка.
- Опции
- Целое число (комбинация битовых флагов). Например, флаг 512 - запретить кнопку "Создать папку", 1 - не отображать Корзину, 16 - отображать EditBox для ввода полного пути с клавиатуры и т.п. Подробнее - см. MSDN.
- КорневаяПапка
- Необязательный параметр. Корневая папка в окне "Выбор папки". Тип - строка. Пользователь не сможет пройти в окне "Выбор папки" выше этой папки. Если параметр не указан, корневой папкой будет рабочий стол Windows. КорневаяПапка может быть числом, определяющим одну из специальных папок Windows. Коды папок представлены ниже
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); var objFolder = objShellApp.BrowseForFolder(0, "Выбор папки", 0, "C:\\"); if (objFolder) WScript.Echo ( objFolder.Self.Path ); else WScript.Echo ( "Папка не выбрана!" );
CanStartStopService()
Метод CanStartStopService() определяет, может ли текущий пользователь запустить/остановить указанный сервис. Возвращаемое значение - булево (число).
Синтаксис
objShellApp.CanStartStopService( ServiceName )
Параметры
- ServiceName
- Строка, имя сервиса.
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); var ServiceName = "tlntsvr" if (!objShellApp.CanStartStopService(ServiceName)) WScript.Echo ( "Вы НЕ можете остановить/запустить сервис " + ServiceName + "!" ); else WScript.Echo ( "Вы можете остановить/запустить сервис " + ServiceName + "!" );
CascadeWindows()
Метод CascadeWindows() распологает все несвёрнутые окна рабочего стола Windows каскадом. Возвращаемого значения нет.
Синтаксис
objShellApp.CascadeWindows()
Параметры
Нет
Комментарии
Вызов метода приводит к тому же эффекту, что и команда "Окна каскадом" ("Cascade Windows") контекстного меню панели задач Windows.
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.CascadeWindows();
ControlPanelItem()
Метод ControlPanelItem() вызывает конкретное приложение панели управления. Возвращаемого значения нет.
Синтаксис
objShellApp.ControlPanelItem( ИмяФайла )
Параметры
- ИмяФайла
- Имя файла конкретного приложения панели управления. Тип - строка. Пустая строка вызывает саму панель управления.
Комментарии
Все файлы приложений панели управления имеют расширение .cpl. Некоторые приложения панели управления:
- access.cpl - специальные возможности.
- appwiz.cpl - установка и удаление программ.
- desk.cpl - настройка экрана.
- hdwwiz.cpl - мастер установки оборудования.
- inetcpl.cpl - свойства обозревателя.
- intl.cpl - язык и региональные стандарты.
- joy.cpl - игровые устройства.
- main.cpl - мышь.
- mmsys.cpl - звуки и аудиоустройства.
- ncpa.cpl - сетевые подключения.
- nusrmgr.cpl - учётные записи пользователей.
- odbccp32.cpl - настройка источников данных ODBC.
- powercfg.cpl - управление электропитанием.
- sysdm.cpl - свойства системы.
- telephon.cpl - телефон и модем.
- timedate.cpl - настройки времени и даты.
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.ControlPanelItem ("desk.cpl"); objShellApp.ControlPanelItem ( "" );
Explore()
Метод Explore() запускает проводник Windows с определённой открытой папкой. Возвращаемого значения нет.
Синтаксис
objShellApp.Explore( Path )
Параметры
- Path
- Путь к открываемой папке. Тип - строка.
Комментарии
Path может быть числом, определяющим одну из специальных папок Windows. Коды папок - см. описание метода NameSpace.
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.Explore("C:\\"); WScript.Echo("Пауза"); objShellApp.Open("C:\\"); // для сравнения
ExplorerPolicy()
Метод ExplorerPolicy() возвращает значение указанной Internet Explorer policy.
Синтаксис
objShellApp.ExplorerPolicy( PolicyName )
Параметры
- PolicyName
- Строка. Имя Internet Explorer policy. Указанное имя должно быть в ветке
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer
. Если такого имени там нет, то метод возвращает NULL.
Пример
var objShell = new ActiveXObject("Shell.Application"); var vReturn; vReturn = objShell.ExplorerPolicy("NoDriveTypeAutoRun"); WScript.Echo (vReturn);
FileRun()
Метод FileRun() вызывает окно "Запуск программы" ("Run"). Возвращаемого значения нет.
Синтаксис
objShellApp.FileRun ()
Параметры
Нет
Комментарии
Вызов метода приводит к тому же эффекту, что и команда меню "Пуск"-"Выполнить" ("Start"-"Run").
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.FileRun();
FindComputer()
Метод FindComputer() вызывает окно проводника Windows "Результаты поиска - компьютеры" ("Search Results - Computers"). Возвращаемого значения нет.
Синтаксис
objShellApp.FindComputer ( )
Параметры
Нет
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.FindComputer ();
FindFiles()
Метод FindFiles() вызывает окно проводника Windows "Результаты поиска" ("Find: All Files"). Возвращаемого значения нет.
Синтаксис
objShellApp.FindFiles ( )
Параметры
Нет
Комментарии
Вызов метода приводит к тому же эффекту, что и команда меню "Пуск"-"Поиск" ("Start"-"Find").
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.FindFiles ();
FindPrinter()
Метод FindPrinter() вызывает окно "Поиск принтеров" ("Find Printers") в Active Directory с предварительным заполнением параметров поиска. Возвращаемого значения нет.
Синтаксис
objShellApp.FindPrinter( Name, Location, Model )
Параметры
- Name
- Необязательный. Строка - имя принтера.
- Location
- Необязательный. Строка - местоположение принтера.
- Model
- Необязательный. Строка - модель принтера.
Комментарии
Вызов метода приводит примерно к тому же эффекту, что и команда меню "Пуск"-"Поиск"-"Принтеры..."
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.FindPrinter ("Name", "Location", "Model");
GetSetting()
Метод GetSetting() возвращает значение указанной глобальной установки (параметра) проводника.
Синтаксис
objShellApp.GetSetting ( Setting )
Параметры
- Setting
Целое число (набор флагов), определяющее глобальную установку (параметр) проводника. Некоторые возможные значения:
- 1 (0x00000001) - Показывать скрытые файлы и папки.
- 2 (0x00000002) - Скрывать расширения для зарегистрированных типов файлов.
- 16384 (0x00004000) - Состояние пиктограмм в списке просмотра Проводника Windows
- 128 (0x00000080) - Открыть двойным или одиночным щелчком мыши
- 32768 (0x00008000) - Подтверждение очистки корзины
- 262144 (0x00040000) - Состояние скрывать защищенные файлы операционной системы.
Более подробно с этим материалом можно ознакомиться на сайте MSDN
Пример
var objShell = new ActiveXObject("shell.application"); WScript.Echo ( objShell.GetSetting ( 32768 ) );
GetSystemInformation()
Метод GetSystemInformation() возвращает некоторую системную информацию. Возвращаемое значение (Return) - зависит от типа запрашиваемой информации. Этот метод может быть использован для запроса различной информации.
Синтаксис
objShellApp.GetSystemInformation( sName )
Параметры
- sName
- Строка, определяет тип информации:
sName Тип Return Описание DirectoryServiceAvailable Boolean Возвращает true
если служба каталогов имеется.DoubleClickTime Integer Время двойного щелчка, в миллисекундах. ProcessorLevel Integer Windows Vista и более поздних версий . Уровень процессора. Возвращает 3, 4 или 5 для процессоров x386, x486 и Pentium соответственно. ProcessorSpeed Integer Скорость процессора в мегагерцах (МГц). ProcessorArchitecture Integer Архитектура процессора. PhysicalMemoryInstalled Integer Количество установленной физической памяти, в байтах. IsOS_Professional Boolean Только для Windows XP. Возвращает true
если операционная система Windows XP Professional Edition.IsOS_Personal Boolean Только для Windows XP. Возвращает true
, если операционная система Windows XP Home Edition.IsOS_DomainMember Boolean Возвращает true
, если компьютер является членом домена.
Комментарии
Подробнее - см. MSDN.
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); WScript.Echo ( "DirectoryServiceAvailable = " + objShellApp.GetSystemInformation("DirectoryServiceAvailable") + '\n'+ "ProcessorLevel = " + objShellApp.GetSystemInformation("ProcessorLevel") + '\n'+ "ProcessorArchitecture = " + objShellApp.GetSystemInformation("ProcessorArchitecture") + '\n'+ "PhysicalMemoryInstalled = " + objShellApp.GetSystemInformation("PhysicalMemoryInstalled") + '\n'+ "IsOS_DomainMember = " + objShellApp.GetSystemInformation("IsOS_DomainMember") );
Help()
Метод Help() вызов справки Windows. Возвращаемого значения нет.
Синтаксис
objShellApp.Help ()
Параметры
Нет
Комментарии
Вызов метода приводит к тому же эффекту, что и команда меню "Пуск"-"Справка и поддержка" ("Start"-"Help and Support").
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.Help ();
IsRestricted()
Метод IsRestricted() возвращает значение заданного ограничения по данным реестра (возвращаемое значение - число).
Синтаксис
objShellApp.IsRestricted( sGroup, sRestriction )
Параметры
- sGroup
- Строка, которая содержит имя раздела реестра, где производится поиск ограничений.
- sRestriction
- Строка, которая содержит имя параметра раздела реестра, где производится поиск ограничений.
Комментарии
IsRestricted сначала ищет названия раздела, который соответствует sGroup в следующем разделе:
HKEY_LOCAL_MACHINE Software Microsoft Windows CurrentVersion Policies
.
HKEY_LOCAL_MACHINE
, то том же подразделе проверяется в разделе HKEY_CURRENT_USER
.
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); WScript.Echo ( objShellApp.IsRestricted("system", "dontdisplaylastusername") );
IsServiceRunning()
Метод IsServiceRunning() определяет, запущен ли указанный сервис. Возвращаемое значение - булево (число).
Синтаксис
objShellApp.IsServiceRunning( ServiceName )
Параметры
- ServiceName
- Строка, имя сервиса.
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); ServiceName = "haspnt" if ( objShellApp.IsServiceRunning(ServiceName) ) WScript.Echo ( "Сервис " + ServiceName + " запущен!" ); else WScript.Echo ( "Сервис " + ServiceName + " НЕ запущен!" );
MinimizeAll()
Метод MinimizeAll() сворачивает все окна рабочего стола Windows. Возвращаемого значения нет.
Синтаксис
objShellApp.MinimizeAll ()
Параметры
Нет
Комментарии
Вызов метода приводит к тому же эффекту, что и команда "Показать рабочий стол" ("Minimize All Windows") контекстного меню панели задач Windows или щелчок по значку "Свернуть все окна" ("Show Desktop") на панели "Быстрый запуск" ("Quick Launch") панели задач Windows.
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.MinimizeAll ();
NameSpace()
Метод NameSpace() получает объект виртуальной папки проводника. Возвращает объект Folder.
Синтаксис
objShellApp.NameSpace( Path )
Параметры
- Path
- Путь к папке или диску. Тип - строка.
Комментарии
Path может быть числом, определяющим одну из специальных папок Windows.
Пример №1:
var objShellApp = WScript.CreateObject("Shell.Application"); var objFolder = objShellApp.NameSpace(25); WScript.Echo ( objShellApp.NameSpace("C:\\").Title + '\n'+objFolder.Self.Path );
Open()
Метод Open() запускает проводник Windows с определённой открытой папкой. Возвращаемого значения нет.
Синтаксис
objShellApp.Open( Path )
Параметры
- Path
- Путь к открываемой папке. Тип - строка.
Комментарии
Path может быть числом, определяющим одну из специальных папок Windows.
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.Open("C:\\") objShellApp.Explore("C:\\") 'для сравнения
SearchCommand()
Метод SearchCommand() отображает панель службы поиска. Возвращаемого значения нет.
Синтаксис
SearchCommand ()
Параметры
Нет
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.SearchCommand ();
ServiceStart()
Метод ServiceStart() запускает указанный сервис. Возвращаемое значение - булево (число) - определяет, успешно ли завершена операция.
Синтаксис
objShellApp.ServiceStart( ServiceName, Persistent )
Параметры
- ServiceName
- Строка, имя сервиса.
- Persistent
- Булево (число). Определяет, что сервис должен автоматически стартовать при старте системы. Если указана ложь, конфигурация сервиса не меняется.
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); var Serv = "haspnt"; if ( objShellApp.ServiceStart(Serv, false) == 0 ) WScript.Echo ( "НЕ удалось запустить сервис " + Serv + "!" ); else WScript.Echo ( "Сервис " + Serv + " успешно запущен!" );
ServiceStop()
Метод ServiceStop() останавливает указанный сервис. Возвращаемое значение - булево (число) - определяет, успешно ли завершена операция.
Синтаксис
objShellApp.ServiceStop( ServiceName, Persistent )
Параметры
- ServiceName
- Строка, имя сервиса.
- Persistent
- Булево (число). Определяет, что сервис должен автоматически стартовать при старте системы. Если указана ложь, конфигурация сервиса не меняется.
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); var Serv = "haspnt"; if ( objShellApp.ServiceStop(Serv, false) == 0 ) WScript.Echo ( "НЕ удалось остановить сервис " + Serv + "!" ); else WScript.Echo ( "Сервис " + Serv + " успешно остановлен!" );
SetTime()
Метод SetTime() вызывает окно настройки времени и даты. Возвращаемого значения нет.
Синтаксис
objShellApp.SetTime ()
Параметры
Нет
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.SetTime ();
ShellExecute()
Метод ShellExecute() выполняет указанное действие над указанным файлом. Возвращаемого значения нет.
Синтаксис
objShellApp.ShellExecute( File, Arguments, Directory, Operation, Show )
Параметры
- File
- Строка. Имя файла.
- Arguments
- Строка (необязательный). Параметры для Operation.
- Directory
- Строка (необязательный). Путь к каталогу с указанным файлом. Если не указан, используется текущий каталог.
- Operation
- Строка (необязательный). Действие ("глагол"), которое необходимо выполнить. Если не указан, используется действие по умолчанию.
Параметр может принимать следующие значения:
- edit - Запускает редактор и открывает документ для редактирования
- find - Инициирует поиск, начиная с указанной директории
- open - Запуск приложения. Если этот файл не исполняемый файл, то запускается связанное с ним приложение.
- print - Печать файла.
- properties - Отображение свойств объекта
- Show
- Число (необязательный). Рекомендуемое состояние окна при выполнении. Запускаемое приложение может проигнорировать этот параметр. Возможные значения:
- 0 - скрытое окно.
- 1 - нормальное окно.
- 2 - минимизированное окно.
- 3 - максимизированное окно.
- 4 - запустить приложение с окном в том состоянии, в котором оно было последний раз. Текущее активное окно останется активным.
- 5 - запустить приложение с окном в текущем состоянии.
- 7 - минимизированное окно. Текущее активное окно останется активным.
- 10 - состояние окна по умолчанию для приложения.
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.ShellExecute ( "notepad.exe", "", "", "open", 1 );
ShowBrowserBar()
Метод ShowBrowserBar() открывает или закрывает указанную панель обозревателя. Возвращает true
в случае успеха, и false
в случае неудачи.
Синтаксис
objShellApp.ShowBrowserBar( CLSID, Show )
Параметры
- CLSID
- Строка. Идентификатор класса (CLSID) панели обозревателя. Некоторые возможные значения:
- Favorites - {EFA24E61-B078-11d0-89E4-00C04FC9E26E}
- Folders - {EFA24E64-B078-11d0-89E4-00C04FC9E26E}
- History - {EFA24E62-B078-11d0-89E4-00C04FC9E26E}
- Search - {30D02401-6A81-11d0-8274-00C04FD5AE38}
- Show
- Булево.
true
- показать,false
- спрятать панель.
Комментарии
Метод доступен только в контексте HTML-документа.
Пример
<script language="JavaScript"> function fnShowBrowserBarJ() { var objShell = new ActiveXObject("shell.application"); var bReturn; bReturn = objShell.ShowBrowserBar("{EFA24E61-B078-11d0-89E4-00C04FC9E26E}", true); } </script>
ShutdownWindows()
Метод ShutdownWindows() вызывает окно выключения и перезагрузки компьютера. Возвращаемого значения нет.
Синтаксис
objShellApp.ShutdownWindows ()
Параметры
Нет
Комментарии
Вызов метода приводит к тому же эффекту, что и команда меню "Пуск"-"Завершение работы" ("Start"-"Shut Down").
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.ShutdownWindows ();
TileHorizontally()
Метод TileHorizontally() упорядочивает окна рабочего стола Windows по горизонтали. Возвращаемого значения нет.
Синтаксис
objShellApp.TileHorizontally ()
Параметры
Нет
Комментарии
Вызов метода приводит к тому же эффекту, что и команда "Окна сверху вниз" ("Tile Windows Horizontally") контекстного меню панели задач Windows.
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.TileHorizontally ();
TileVertically()
Метод TileVertically() упорядочивает окна рабочего стола Windows по вертикали. Возвращаемого значения нет.
Синтаксис
objShellApp.TileVertically ()
Параметры
Нет
Комментарии
Вызов метода приводит к тому же эффекту, что и команда "Окна слева направо" ("Tile Windows Vertically") контекстного меню панели задач Windows.
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.TileVertically ();
ToggleDesktop
Метод ToggleDesktop сворачивает или разворачивает все окна на рабочем столе. Возвращаемого значения нет.
Синтаксис
objShellApp.ToggleDesktop ()
Параметры
Нет
Комментарии
Имитирует нажатие на значок "Свернуть все окна" в панели "Быстрый запуск" ("Quick launch").
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.ToggleDesktop ();
TrayProperties()
Метод TrayProperties() вызывает окно свойств панели задач Windows. Возвращаемого значения нет.
Синтаксис
objShellApp.TrayProperties ()
Параметры
Нет
Комментарии
Вызов метода приводит к тому же эффекту, что и команда "Свойства" ("Properties") контекстного меню панели задач Windows.
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.TrayProperties ();
UndoMinimizeAll()
Метод UndoMinimizeAll() восстановление всех свёрнутых окон рабочего стола Windows. Возвращаемого значения нет.
Синтаксис
objShellApp.UndoMinimizeAll ()
Параметры
Нет
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); objShellApp.MinimizeAll (); WScript.Sleep ( 500 ) objShellApp.UndoMinimizeAll ();
Windows()
Метод Windows() получение объекта ShellWindows.
Синтаксис
objShellApp.Windows ()
Параметры
Нет
Возвращаемое значение
Объект ShellWindows.
Пример
var objShellApp = WScript.CreateObject("Shell.Application"); var WinCol = objShellApp.Windows().Count; WScript.Echo ( "В настоящий момент открыто окон Проводника - " + WinCol )
WindowsSecurity()
Метод WindowsSecurity() имитирует нажатие CTRL+ALT+DELETE при использовании соединения Microsoft Terminal Server. Возвращаемого значения нет.
Синтаксис
objShellApp.WindowsSecurity ()
Параметры
Нет
Пример
<script language="JScript"> function fnIShellDispatch4WindowsSecurityJ() { var objShell = new ActiveXObject("shell.application"); objShell.WindowsSecurity(); } </script>
Объект ShellWindows
Объект ShellWindows представляет коллекцию открытых окон оболочки (Shell).
Сюда входят как открытые окна проводника (Application Microsoft Internet Explorer), так и открытые окна Internet Explorer (Application Windows Internet Explorer).
К первому случаю относятся не только открытые окна проводника в файловой системе, но и специальные возможности (Панель управления, Мой компьютер...).Во втором случае в список попадут закладки открытых окон браузера Internet Explorer.
Создание объекта.
var objShellWindows = objShellApp.Windows()
Свойство
Объект ShellWindows имеет одно свойство Count, которое возврвщает количество элементов коллекции:
// Свойство. Только чтение. objShellWindows.Count
Метод item()
Метод item получает InternetExplorer
объект, представляющий окно оболочки.
objShellWindows.item ( Index )Параметры
- Index
- Индекс элемента. Значение должно быть как и следовало ожидать не меньше нуля и меньше Count
Необязательный. При отсутствии параметра его значение по умолчанию ноль.
Объект
InternetExplorer
имеет ряд полезных свойств. Вот некоторые из них:Свойство Описание LocationName Получает путь или название ресурса, который в данный момент обрабатывается. LocationURL Получает URL ресурса, который в данный момент обрабатывается. Application Объект, запущенный в данном окне. Path Путь к объекту, запущенному в данном окне. Может отсутствовать в более новых версиях.
Метод _NewEnum()
Метод создает и возвращает новый объект ShellWindows, который является копией текущего ShellWindows.
Синтаксис:objShellWindows._NewEnum ()
Пример
var objShell = new ActiveXObject("Shell.Application"); var objShellWindows, s=''; objShellWindows = objShell.Windows(); if (objShellWindows != null) { var objIE; for( var i=0; i < objShellWindows.Count; i++) { objIE = objShellWindows.Item(i); if (objIE != null) s += "\n\nPath:\t\t" + objIE.path + "\n LocationName:\t" + objIE.LocationName + "\n LocationURL:\t"+objIE.LocationURL; } } WScript.Echo (s);
ShellSpecialFolderConstants
ShellSpecialFolderConstants определяет уникальные константы, которые идентифицируют специальные папки независимо от типа операционной системы WINDOWS.
typedef enum { ssfALTSTARTUP = 0x1d, ssfAPPDATA = 0x1a, ssfBITBUCKET = 0x0a, ssfCOMMONALTSTARTUP = 0x1e, ssfCOMMONAPPDATA = 0x23, ssfCOMMONDESKTOPDIR = 0x19, ssfCOMMONFAVORITES = 0x1f, ssfCOMMONPROGRAMS = 0x17, ssfCOMMONSTARTMENU = 0x16, ssfCOMMONSTARTUP = 0x18, ssfCONTROLS = 0x03, ssfCOOKIES = 0x21, ssfDESKTOP = 0x00, ssfDESKTOPDIRECTORY = 0x10, ssfDRIVES = 0x11, ssfFAVORITES = 0x06, ssfFONTS = 0x14, ssfHISTORY = 0x22, ssfINTERNETCACHE = 0x20, ssfLOCALAPPDATA = 0x1c, ssfMYPICTURES = 0x27, ssfNETHOOD = 0x13, ssfNETWORK = 0x12, ssfPERSONAL = 0x05, ssfPRINTERS = 0x04, ssfPRINTHOOD = 0x1b, ssfPROFILE = 0x28, ssfPROGRAMFILES = 0x26, ssfPROGRAMFILESx86 = 0x30, ssfPROGRAMS = 0x02, ssfRECENT = 0x08, ssfSENDTO = 0x09, ssfSTARTMENU = 0x0b, ssfSTARTUP = 0x07, ssfSYSTEM = 0x25, ssfSYSTEMx86 = 0x29, ssfTEMPLATES = 0x15, ssfWINDOWS = 0x24 } ShellSpecialFolderConstants;
Константа | Описание |
---|---|
ssfALTSTARTUP 0x1D (29). | Каталог файловой системы, который соответствует не локализованной Startup program group |
ssfAPPDATA 0x1a (26). | Каталог файловой системы, который служит в качестве общего хранилища для приложений. Типичный путь C:\Documents и Settings\имя пользователя\Application Data. |
ssfBITBUCKET 0x0A (10). | Виртуальный каталог, который содержит объекты пользовательской корзины |
ssfCOMMONALTSTARTUP 0x1E (30). | Каталог файловой системы, который соответствует Startup program group для всех пользователей |
ssfCOMMONAPPDATA 0x23 (35). |
Данные для приложений для всех пользователей. Типичный путь C: \ Documents и Settings \ All Users \ Application Data. |
ssfCOMMONDESKTOPDIR 0x19 (25). | Каталог файловой системы, содержащий файлы и папки, которые отображаются на рабочем столе для всех пользователей. Типичный путь C: \ Documents и Settings \ All Users \ Desktop. Действительно только для систем Windows NT. |
ssfCOMMONFAVORITES 0x1F (31). | Каталог файловой системы, который служит в качестве общего хранилища для избранных URL, общих для всех пользователей. Действительно только для систем Windows NT. |
ssfCOMMONPROGRAMS 0x17 (23). | Каталог файловой системы, который содержит каталоги для общих групп программ, которые появляются в меню Пуск для всех пользователей. Типичный путь C: \ Documents и Settings \ All Users \ Start Menu \ Programs. Действительно только для систем Windows NT. |
ssfCOMMONSTARTMENU 0x16 (22). | Каталог файловой системы, который содержит каталоги для общих программ, которые появляются в меню Пуск для всех пользователей. Типичный путь C: \ Documents и Settings \ All Users \ Start Menu \. Действительно только для систем Windows NT. |
ssfCOMMONSTARTUP 0x18 (24). | Каталог файловой системы, который содержит программы, которые находятся в папке Startup для всех пользователей. Типичный путь C: \ Documents и Settings \ All Users \ Microsoft \ Windows \ Start Menu \ Programs \ Startup. Действительно только для систем Windows NT. |
ssfCONTROLS 0x03 (3). | Каталог, который содержит иконки для приложений Панели управления. |
ssfCOOKIES 0x21 (33). | Каталог файловой системы, который служит в качестве общего хранилища для интернет-Cookies. Типичный путь C: \ Documents и Settings \ имя пользователя \ Application Data \ Microsoft \ Windows \ Cookies. |
ssfDESKTOP 0x00 (0). | Windows Desktop-виртуальная папка |
ssfDESKTOPDIRECTORY 0x10 (16). | Каталог файловой системы, используемое для физического хранения файловых объектов, которые отображаются на рабочем столе. |
ssfDRIVES 0x11 (17). | Мой компьютер - виртуальная папка, |
ssfFAVORITES 0x06 (6). | Каталог файловой системы, который служит в качестве общего хранилища для избранных URL-адресов пользователя. |
ssfFONTS 0x14 (20). | Виртуальный каталог, который содержит установленные шрифты. Типичный путь C: \ Windows \ Fonts. |
ssfHISTORY 0x22 (34). | Каталог файловой системы, который служит в качестве общего хранилища для элементов истории IE. |
ssfINTERNETCACHE 0x20 (32). | Каталог файловой системы, который служит в качестве общего хранилища для временных файлов Интернета для IE. |
ssfLOCALAPPDATA 0x1c (28). | Каталог файловой системы, который служит в качестве хранилища данных для локальных приложений. Типичный путь C: \ Users \ имя пользователя \ AppData \ Local. |
ssfMYPICTURES 0x27 (39). | Папка My PICTURES. |
ssfNETHOOD 0x13 (19). | Папка файловой системы, который содержит объекты ссылок в My Network Places. |
ssfNETWORK 0x12 (18). | Сетевое окружение-виртуальная папка, которая представляет корень иерархии сети. |
ssfPERSONAL 0x05 (5). | Каталог файловой системы, который служит в качестве общего хранилища для документов пользователя. |
ssfPRINTERS 0x04 (4). | Виртуальный каталог, который содержит установленные принтеры. |
ssfPRINTHOOD 0x1b (27). | Папка профиля пользователя. |
ssfPROFILE 0x28 (40). | Папка профиля пользователя. |
ssfPROGRAMFILES 0x26 (38). | Папка Program Files. |
ssfPROGRAMFILESx86 0x30 (48). | Папка Program Files. Для 32-рязрядных приложений. Типичный путь C: \ Program Files или C: \ Program Files (x86) на 64-разрядном компьютере. |
ssfPROGRAMS 0x02 (2). | Каталог файловой системы, который содержит группы программ пользователя Типичный путь C:\Users\username\AppData\Microsoft\Windows\Start Menu\Programs. |
ssfRECENT 0x08 (8). | Каталог файловой системы, который содержит недавно использовавшиеся документы пользователя. |
ssfSENDTO 0x09 (9). | Каталог файловой системы, который содержит Send To пункт меню. |
ssfSTARTMENU 0x0B (11). | Каталог файловой системы, который содержит Start пункт меню. |
ssfSTARTUP 0x07 (7). | Каталог файловой системы, который соответствует запускаемым программам, когда пользователь входит в систему. |
ssfSYSTEM 0x25 (37). | Системная папка. Обычно это C:\Windows\System32 или |
ssfSYSTEMx86 0x29 (41). | Системная папка. Обычно это C:\Windows\System32 или C:\Windows\Syswow32 на 64-разрядном компьютере. |
ssfTEMPLATES 0x15 (21). | Каталог файловой системы, который служит в качестве общего хранилища для шаблонов документов. |
ssfWINDOWS 0x24 (36). | Каталог ОС Windows. Это соответствует %Windir% или %SystemRoot% переменных окружения. |
Следует отметить, что при написании сценариев необходимо использовать цифровые, а не мнемонические константы.
Пример
var objShell = new ActiveXObject("shell.application"); var objFolder; var ssfWINDOWS = 36; objFolder = objShell.NameSpace(ssfWINDOWS); if (objFolder != null) { WScript.Echo (objFolder.Title + '\n' + objFolder.Self.Path); }