Win32_OperatingSystem

WSH + WMI. Примеры. Класс Win32_OperatingSystem



Класс возвращают экземпляр активной в настоящее время операционной системы и содержит сведения о этой системе, ее состоянии и настройках.

class Win32_OperatingSystem : CIM_OperatingSystem { string BootDevice; string BuildNumber; string BuildType; string Caption; string CodeSet; string CountryCode; string CreationClassName; string CSCreationClassName; string CSDVersion; string CSName; sint16 CurrentTimeZone; boolean DataExecutionPrevention_Available; boolean DataExecutionPrevention_32BitApplications; boolean DataExecutionPrevention_Drivers; uint8 DataExecutionPrevention_SupportPolicy; boolean Debug; string Description; boolean Distributed; uint32 EncryptionLevel; uint8 ForegroundApplicationBoost; uint64 FreePhysicalMemory; uint64 FreeSpaceInPagingFiles; uint64 FreeVirtualMemory; datetime InstallDate; uint32 LargeSystemCache; datetime LastBootUpTime; datetime LocalDateTime; string Locale; string Manufacturer; uint32 MaxNumberOfProcesses; uint64 MaxProcessMemorySize; string MUILanguages[]; string Name; uint32 NumberOfLicensedUsers; uint32 NumberOfProcesses; uint32 NumberOfUsers; uint32 OperatingSystemSKU; string Organization; string OSArchitecture; uint32 OSLanguage; uint32 OSProductSuite; uint16 OSType; string OtherTypeDescription; Boolean PAEEnabled; string PlusProductID; string PlusVersionNumber; boolean PortableOperatingSystem; boolean Primary; uint32 ProductType; string RegisteredUser; string SerialNumber; uint16 ServicePackMajorVersion; uint16 ServicePackMinorVersion; uint64 SizeStoredInPagingFiles; string Status; uint32 SuiteMask; string SystemDevice; string SystemDirectory; string SystemDrive; uint64 TotalSwapSpaceSize; uint64 TotalVirtualMemorySize; uint64 TotalVisibleMemorySize; string Version; string WindowsDirectory; };


Методы

Класс Win32_OperatingSystem имеет следующие методы:
МетодОписание
Reboot Завершает работу, а затем перезапускает компьютерную систему.
SetDateTime Позволяет устанавливать дату и время на компьютере.
Shutdown Выгружает программы и DLL-библиотеки в месте, где это безопасно для выключения компьютера.
Win32Shutdown Предоставляет полный набор опций отключения операционных систем Windows.
Win32ShutdownTracker Обеспечивает тот же набор опций отключения, поддерживаемых Win32Shutdown, и дополнительно позволяет указать причину остановки, или тайм-аут.


Метод Reboot класса Win32_OperatingSystem

Метод Reboot выключает компьютерную систему, затем перезапускает ее.
Не имеет параметров.


Set Root = GetObject("winmgmts:{(Shutdown)}//./root/cimv2") Set OpSysSet = Root.ExecQuery("select * from Win32_OperatingSystem where Primary=true") for each OpSys in OpSysSet OpSys.Reboot() next


Метод SetDateTime класса Win32_OperatingSystem

Метод устанавливает текущее системное время на компьютере.
Параметры - значение текущего времени
У пользователя, от имени которого выполняется SetDateTime должны быть соответствующие права.
Минимальная клиентская ОС - Windows Vista
Минимальная серверная ОС - Windows Server 2003


Метод Shutdown класса Win32_OperatingSystem

Этот метод немедленно отключает компьютер, если это возможно. Система останавливает все запущенные процессы, очищает все файловые буферы, а затем выключает систему
Не имеет параметров.


Set Root = GetObject("winmgmts:{(Shutdown)}//./root/cimv2") Set OpSysSet = Root.ExecQuery("select * from Win32_OperatingSystem where Primary=true") for each OpSys in OpSysSet OpSys.Shutdown() next


Метод Win32Shutdown класса Win32_OperatingSystem

Метод Win32Shutdown обеспечивает полный набор опций отключения поддерживаемых операционных систем Win32. Он включает logoff, shutdown, reboot.
Параметры: Flags, Reserved
Значения параметра Flags
ЗначениеОписание
0 (0x0) Log Off. останавливает все процессы, связанные с контексте безопасности процесса и отображает диалоговое окно входа в систему.
4 (0x4) Принудительный Log Off. Немедленный выход. Не уведомляет приложения, сессия входа в систему заканчивающиеся. Это может привести к потере данных.
1 (0x1) Shutdown. Выключить компьютер к точке, где это безопасно выключить питание. Процессы и пользователь уведомляются.
5 (0x5) Forced Shutdown (1 + 4). Принудительное выключение. Выключить компьютер к точке, где это безопасно выключить питание. Пользователи уведомляются. Все файловые буферы сбрасываются на диск, и все запущенные процессы останавливаются. Из-за этого, вы не сможете получить возвращаемого значения, если вы работаете на удаленном компьютере.
2 (0x2) Reboot (2 + 4). Завершает работу, а затем перезагружает компьютер.
6 (0x6) Forced Reboot (2 + 4) . Принудительная перезагрузка. Завершает работу, а затем перезагружает компьютер. Все запущенные процессы останавливаются. Из-за этого, вы не сможете получить возвращаемого значения, если вы работаете на удаленном компьютере.
8 (0x8) Power Off. Выключить компьютер и выключить питание (если поддерживается компьютером).
12 (0xC) Forced Power Off (8 + 4). Принудительное отключение питания. Выключить компьютер и выключить питание (если поддерживается компьютером). Все запущенные процессы останавливаются. Из-за этого, вы не сможете получить возвращаемого значения, если вы работаете на удаленном компьютере.

Значения параметра Reserved.
Средства для расширения Win32Shutdown. В настоящее время параметр игнорируется.

Минимальная клиентская ОС - Windows Vista
Минимальная серверная ОС - Windows Server 2003


Метод Win32ShutdownTracker класса Win32_OperatingSystem.

Предоставляет тот же набор опций отключения поддерживаемых Win32Shutdown метода в Win32_OperatingSystem, но это также позволяет указать комментарии, причину остановки, или тайм-аут.
Параметры: Timeout, Comment, ReasonCode, Flags
Timeout - опционально - время, в секундах, перед выключением. Значение по умолчанию равно 0 (нулю).
Comment - сообщение для отображения в диалоговом окне завершения работы, также оно хранится в виде комментария в журнале событий ( event log ).
ReasonCode - код причины отключения.
Flags
ЗначениеОписание
0 (0x0)Log Off.
4 (0x4)Forced Log Off (0 + 4).
1 (0x1)Shutdown.
5 (0x5)Forced Shutdown (1 + 4).
2 (0x2)Reboot.
6 (0x6)Forced Reboot (2 + 4).
8 (0x8)Power Off.
12 (0xC)Forced Power Off (8 + 4).
Наличие кода 4 в этом параметре при работе на удаленном компьютере приведет к тому, что код возврата будет неопределен.

Пример получения сведений об операционной системе. WSH + WMI.



//Подключились к WMI локального компьютера (".") var root = GetObject("winmgmts:\\\\.\\root\\cimv2"); //Выполним запрос на получение сведений об операционной системе var reswmi = root.ExecQuery("SELECT * FROM Win32_OperatingSystem"); var accitem; for(var acc = new Enumerator(reswmi); !acc.atEnd(); acc.moveNext()) accitem=acc.item(); var s = 'короткое описание версии операционной системы ' + accitem.Caption + "\r\n"+ 'номер билда операционной системы ' + accitem.BuildNumber + "\r\n"+ "номер версии операционной системы " + accitem.Version + "\r\n"+ 'имя операционной системы ' + accitem.Name + "\r\n"+ 'тип операционной системы: ' + accitem.OSType + "\r\n"+ 'версия сервис-пака ' + accitem.ServicePackMajorVersion + "\r\n"+ 'язык операционной системы ' + accitem.OSLanguage + "\r\n"+ 'код региона, который использует операционная система ' + accitem.CountryCode + "\r\n"+ 'идентификатор языка, используемого операционной системой ' + accitem.Locale + "\r\n"+ 'дата-время установки ' + accitem.InstallDate + "\r\n"+ 'имя компьютера ' + accitem.CSName + "\r\n"+ 'организация, на которую зарегистрирована операционная система ' + accitem.Organization + "\r\n"+ 'серийный номер ' + accitem.SerialNumber + "\r\n"+ 'зарегистрированный пользователь операционной системы ' + accitem.RegisteredUser + "\r\n"+ 'временная зона; число минут смещения от времени по Гринвичу' + accitem.CurrentTimeZone + "\r\n"+ 'дата + время последней загрузки ' + accitem.LastBootUpTime + 'NumberOfLicensedUsers ' + accitem.NumberOfLicensedUsers + "\r\n"+ 'NumberOfProcesses ' + accitem.NumberOfProcesses + "\r\n"+ 'NumberOfUsers ' + accitem.NumberOfUsers + "\r\n"+ 'FreePhysicalMemory ' + accitem.FreePhysicalMemory + "\r\n"+ 'FreeSpaceInPagingFiles ' + accitem.FreeSpaceInPagingFiles + "\r\n"+ "\r\n\r\n"; WScript.Echo(s);


В документации приведен следующий пример:

On Error Resume Next ' Connect to WMI and obtain instances of Win32_OperatingSystem For Each objOS in GetObject( _ "winmgmts:").InstancesOf ("Win32_\") WScript.Echo "Name = " & objOS.Caption _ & "Version = " & objOS.Version &VBCR _ & "Registered User = " & objOS.RegisteredUser &VBCR _ & "Manufacturer = " & objOS.Manufacturer Next if Err <> 0 Then WScript.Echo Err.Description Err.Clear End if


Более подробно о классе Win32_OperatingSystem смотрите на MSDN.



Для вопросов, обсуждений, замечаний, предложений и т. п. можете использовать раздел форума этого сайта (требуется регистрация).






  TopList Rambler Top100 own counter Valid XHTML 1.0 Strict Valid CSS Rambler Top100

Фитотерапия Молитвы Водолечение Юмор Форум Кладовка link О авторе

Фитотерапия Молитвы Водолечение Юмор Форум Кладовка Ссылки О авторе Отправить сообщение Карта сайта Поиск по сайту Главная страница

Copyright © 1999 - 2017  Бронислав Краснер