Вернуться к статье

Листинг 1. Winmgmts.vbs.

?* Использование моникера winmgmts и VBScript GetObject для доступа к WMI
strComputer = «tmtowtdi»
strProcsToKill = «notepad.exe»
?* Шаг 1. Подключение к WMI на целевом компьютере.
?* Шаг 2. Извлечь экземпляры класса Win32_Process.
BEGIN CALLOUT A
Set wbemObjectSet = _ 
 GetObject(«winmgmts://» & strComputer).InstancesOf(«Win32_Process»)
END CALLOUT A
?* Шаг 3. Просмотр SWbemObjectSet, содержащего экземпляры
?* SWbemObjects, которые в данном примере являются объектами Win32_Process.
?* Вывести значения ProcessID and Name для каждого экземпляра процесса
?* и прервать выполнение всех процессов, чьи имена Name совпадают с значением
?* переменной strProcsToKill («notepad.exe» в этом примере). 
BEGIN CALLOUT B
For Each wbemObject In wbemObjectSet
 WScript.Echo wbemObject.ProcessID & «: « & wbemObject.Name
 If LCase(wbemObject.Name) = strProcsToKill Then wbemObject.Terminate
Next
END CALLOUT B

Листинг 2. Locator.vbs.

?* Использование SWbemLocator и VBScript CreateObject для доступа к WMI
strComputer = «tmtowtdi»
strProcsToKill = «notepad.exe»
?* Создать указатель на объект SWbemLocator для подключения
?* к WMI на целевом компьютере с необязательной аутентификацией.
Set wbemLocator = CreateObject(«WbemScripting.SWbemLocator»)
?* Шаг 1. Подключение к WMI на целевом компьютере.
Set wbemServices = wbemLocator.ConnectServer(strComputer)
?* Шаг 2. Извлечь экземпляры класса Win32_Process.
Set wbemObjectSet = wbemServices.InstancesOf(«Win32_Process»)
?* Шаг 3. Просмотр SWbemObjectSet, содержащего экземпляры
?* SWbemObjects, которые в данном примере являются объектами Win32_Process.
?* Вывести значения ProcessID and Name для каждого экземпляра процесса
?* и прервать выполнение всех процессов, чьи имена Name совпадают с значением
?* переменной strProcsToKill («notepad.exe» в этом примере). 
For Each wbemObject In wbemObjectSet
WScript.Echo wbemObject.ProcessID & «: « & wbemObject.Name
 If LCase(wbemObject.Name) = strProcsToKill Then wbemObject.Terminate
Next


Вернуться к статье

Таблица 1. Основные объекты модели WMI Scripting Object Model.
ОбъектОписание
SWbemLocatorОбеспечивает доступ к объекту SWbemServices, который осуществляет подключение к WMI. Предоставляет дополнительные возможности проверки подлинности при установлении соединения. См. http://msdn.microsoft.com/library/psdk/wmisdk/scref_2oqa.htm.
SWbemServicesОбеспечивает доступ к экземплярам управляемых объектов, осуществляет запросы, выполняет другие связанные с WMI операции. См. http://msdn.microsoft.com/library/psdk/wmisdk/scref_3ann.htm.
SWbemEventSourceИзвлекает события при помощи запроса о событиях. Доступ к этому объекту осуществляется при вызове метода SWbemServices::ExecNotificationQuery. См. http://msdn.microsoft.com/library/psdk/wmisdk/scref_563p.htm.
SWbemObjectSetЯвляется коллекцией объектов SWbemObject. Создать этот объект и получить к нему доступ можно при помощи нескольких методов, принадлежащих объектам SWbemServices и SWbemObject. См. http://msdn.microsoft.com/library/psdk/wmisdk/scref_8jas.htm.
SWbemObjectПредставляет собой определение одного класса WMI в форме экземпляра объекта. См. http://msdn.microsoft.com/library/psdk/wmisdk/scref_8fck.htm.
SWbemLastErrorПредставляет собой объект обработки ошибок. См. http://msdn.microsoft.com/library/psdk/wmisdk/scref_2iia.htm.
SWbemMethodSetЯвляется коллекцией объектов SWbemMethod, которые соответствуют методам управляемых объектов WMI. См. http://msdn.microsoft.com/library/psdk/wmisdk/scref_19kk.htm.
SWbemPropertySetЯвляется коллекцией объектов SWbemProperty, которые соответствуют свойствам управляемых объектов WMI. См. http://msdn.microsoft.com/library/psdk/wmisdk/scref_4bas.htm.
SWbemQualifierSetЯвляется коллекцией объектов SWbemQualifier, каждый из которых представляет один спецификатор класса, экземпляра, свойства или параметра метода WMI. См. http://msdn.microsoft.com/library/psdk/wmisdk/scref_8dv8.htm.
SWbemObjectPathКонструирует пути объекта. См. http://msdn.microsoft.com/library/psdk/wmisdk/scref_93s8.htm.
SWbemSecurityНастраивает установки безопасности. См. http://msdn.microsoft.com/library/psdk/wmisdk/scref_4m0p.htm.
SWbemSinkПодписывает на получение сообщений о происходящих событиях. См. http://msdn.microsoft.com/library/psdk/wmisdk/scref_0sff.htm.


Вернуться к статье