Тема: VBS/WMI: генерация MOF-исходника для класса WMI
Скрипт генерирует файл с описанием свойств и методов на языке MOF (Managed Object Format - язык на котором пишутся классы для WMI) для заданного WMI-класса.
Созданный файл впоследствие можно перекомпилировать и добавлять в репозиторий при помощи mofcomp.exe
'*****************************************************************************************
'* Имя: GetMOF.vbs
'* Язык: VBScript
'* commandline: GetMOF.vbs [WMI_class]
'*
'* Описание: Скрипт предназначен для извлечения MOF-исходника WMI-класса из репозитория CIM.
'* В качестве параметра запуска либо во всплывающем окне
'* задается имя интересующего класса WMI.
'* Впоследствии скрипт создаёт MOF-файл с описанием свойств и методов заданного WMI-класса.
'*******************************************************************************************
Set WshShell = WScript.CreateObject("Wscript.Shell")
if Wscript.Arguments.Count=0 then
classname = InputBox ("Имя WMI-класса ",,"Win32_Process")
else
classname = Wscript.Arguments.Item(0)
end if
if classname="" then WScript.Quit
set objserv = GetObject ("winmgmts:\\.\Root\CIMV2")
wbemFlag = &h20000
on error resume next
MOF = objServ.Get (classname,wbemFlag).GetObjectText_()
if err.number <>0 then
msgbox "Незвестный класс:"& vbcr &" """& classname&"""",16,"Error"
WScript.quit
end if
Set File= CreateObject ("Scripting.FileSystemObject").OpenTextFile (classname&".mof",2, True)
File.WriteLine (MOF)
File.Close()
