ПредишенСледващото

WMI скриптове 101

WMI скриптове - е библиотека интерфейси за автоматизация, които са разположени на управителя на обекта Обща информация Модел (CIMOM). COM-съвместим скриптови езици (например, Windows Script, WS, ActivePerl), използвани за автоматизация интерфейси за достъп до инфраструктурата WMI. Wbemdisp.dll библиотека наследява WMI за автоматизация на обекти, методи и свойства.

За достъп до WMI през WMI скриптове библиотеката, за да направи три стъпки, които са общи за повечето WMI скриптове. Първо - трябва да се свържете с услугата за управление на Windows на, а вторият - за получаване на копия от WMI управлявани обекти, третият - да се обадите на метод или да използвате свойствата на управляван обект. След проучване на интерфейсите, които се използват за изпълнението на тези три стъпки, по-уверени усещане по пътя към върха на изкуството на писане на скриптове.

Помислете WMI-скрипт, който показва всички три стъпки в действие. Обява 1 показва WMI-скрипт Winmgmts.vbs.

Сценарият инициализира две низови променливи - strComputer и strProcsToKill. Име на компютъра цел се намира в променливо strComputer и променлива strProcsToKill удостоен с името на процеса, който се използва в сценария, за да открие и спре всички стартирани процеси със същото име. В този пример, името на текущия процес notepad.exe.

Сценарият се връща всеки случай Win32_ Процес като SWbemObject на събиране SwbemObjectSet. SWbemObjectSet и SWbemObject - са само две от няколко интерфейса, предлагани WMI скриптове библиотека. Тъй SWbemObjectSet е колекция, достъп до тези елементи могат да бъдат разположени с помощта на За конструкт. Всеки VBScript скриптов език (вж. Списък 1. Етикет B).

Означени B разпределят част от сценария, който изпълнява последната стъпка за достъп до WMI. Вътре в За цикъла. Всеки организиран достъп до две свойства и един метод, определени в Win32_Process клас. На първо място, когато сценария за всеки отделен случай Win32_ Process ProcessID показва процеса на ID и име Name. След това, настоящата инстанция Win32_Process Наименование името на процеса в сравнение със стойността на променливата strProcsToKill. Ако тези стойности са същите, сценарият изисква определен клас в метод Win32_ за унищожаване на текущия процес инстанция.

За да разберете как свойствата и методите на повече от 300 класа в CIM Win32, гледат на свойствата и методите на класа Win32_ процес. Позволете ми да ви напомня, че в класа - това е шаблон, който определя свойствата и поведението на всеки отделен случай. CIM съдържа всички определения на класа за управлявани среди. Във всеки случай winmgmts.vbs процес използва методи и свойства Win32_Process клас, както и собствен наследствено. Това е вярно за всички класове, определени в CIM. Проучване на определените класове в CIM, просто да се използват wbemtest.exe програма. За информация относно класовете може да се намери в документацията WMI SDK.

WMI обектния модел

Фигура 1 показва обект модел WMI от основните обекти на WMI скриптове библиотека. моделни обекти предоставят методи и свойства, които се използват в сценариите за достъп и извличане на WMI обекти. Помислете за стъпките, както winmgmts.vbs използва обекти, които осигуряват на модела.

Инструменти за управление прозорци Assistant System Administrator

Фигура 1. Модел на WMI скриптове обекти.

Стъпка 1: Свързване на WMI. За да се свържете WMI в скрипт използва псевдонима winmgmts. Той се връща SwbemServices обект. Вместо да създавате връзки към Swbem Услуги обект в метода на сценарий се нарича веднага InstancesOf обект SwbemServices.

Таблица 1 дава кратко описание на всеки обект модел WMI Scripting обектния модел и предоставя връзки към Microsoft Web-сайт, където можете да намерите подробна информация за методите и свойствата на съответния обект.

Обява 2 показва сценарий locator.vbs, която изпълнява същата задача както winmgmts.vbs. Основната разлика между двете е, че примерите locator.vbs за достъп до обекта, използвайки SwbemServices SwbemLocator обект, а не WMI-прозвище. Това обяснява защо locator.vbs използва VBScript-функцията CreateObject, докато winmgmts.vbs използва функцията GetObject. Winmgmts.vbs използва GetObject да работи с псевдонима. Програмен идентификатор Wbem Scripting.SWbemLocator в locator.vbs показва функцията CreateObject, че е необходимо да се създаде обект SWbem sLocator.

Въпреки че сценарий е показано на обяви 1 и 2 са функционално идентични, те показват ефекта на различни механизми, присъщи WMI библиотека. Начинаещите може да изглежда, че названието на синтаксиса е ненужно объркващо, така че най-напред те могат да работят с SWbem Locator. От гледна точка на функционалност метод Connect сървър, който осигурява SWbemLocator, позволява да се разпределят правомощията, необходими за извършване на идентификация WMI връзката. Синтаксис прякор дава възможност за извършване на множество действия в един ред код.

Обектите се предлагат WMI скриптове библиотека, позволяват задълбочен подход към развитието на данни WMI. В следващата статия Смятам да разгледа обектите библиотеки WMI с още по-богат на функции. В същото време, бих предложил на читателя като упражнение да промени всяко от двете потребители, така че да се извлече други класове Win32. Съвет: В допълнение към промените името на класа, който се предава InstancesOf метод, трябва да се модифицира за контур на тялото. Всяка така че прилага в методи и свойства цикъл съвпада с методите и свойствата на избрания клас.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!