WMI — это аббревиатура инструмента управления Windows на английском языке. Его основные функции: доступ к некоторой информации и службам локального хоста, а также управление удаленными компьютерами (конечно, у вас должны быть достаточные разрешения), например: перезагрузка, выключение, закрытие. процессы и создать процессы ожидания.
Конечно, эта статья применима к vbscript.
Официальная информация Microsoft:
Примеры следующие:
Чтобы использовать WMI, сначала создайте проект — обратитесь к библиотеке Microsoft WMI Scripting V1.1.
Получить информацию о видеокарте/звуковой карте/памяти/операционной системе
Информация о звуковой карте
Private Sub wmiSoundDeviceInfo()Dim wmiObjSet As SWbemObjectSetDim obj As SWbemObjectSet wmiObjSet = GetObject(winmgmts:{impersonationLevel=impersonate}). СабИнформация о видеокарте
Private Sub wmiVideoControllerInfo()Dim wmiObjSet As SWbemObjectSetDim obj As SWbemObjectSet wmiObjSet = GetObject(winmgmts:{impersonationLevel=impersonate}). _InstancesOf(Win32_VideoController)При локальной ошибке Возобновить следующийДля каждого объекта в wmiObjSetMsgBox obj.VideoProcessorNextEnd Subинформация о памяти
Private Sub wmiPhysicalMemoryInfo() Dim wmiObjSet As SWbemObjectSetDim obj As SWbemObjectSet wmiObjSet = GetObject(winmgmts:{impersonationLevel=impersonate}). & objItem.BankLabelDebug.Print Емкость: & objItem.CapacityDebug.Print Caption: & objItem.CaptionDebug.Print CreationClassName: & objItem.CreationClassNameDebug.Print DataWidth: & objItem.DataWidthDebug.Print Описание: & objItem.DescriptionDebug.Print DeviceLocator: & objitem.devicelocatordebug.print formfactor: & objitem.formfactorebug.print hotswappable: & objitem.hotswappledebug.print installdate: & objitem.installdebug.print interleavedatepth: & objitem.InterleAvedAtepThepThepThepThepThepThepThepThepThePh objItem.InterleavePositionDebug.Print Производитель: & objItem.ManufacturerDebug.Print MemoryType: & objItem.MemoryTypeDebug.Print Model: & objItem.ModelDebug.Print Name: & objItem.nameDebug.Print OtherIdentifyingInfo: & objItem.OtherIdentifyingInfoDebug.Print PartNumber: & objItem.PartNumberDebug.Print PositionInRow: & objItem.PositionInRowDebug.Print PoweredOn: & objItem.PoweredOnDebug.Print Removable: & objItem.RemovableDebug.Print Сменный: & objItem.ReplaceableDebug.Print SerialNumber: & objItem.SerialNumberDebug.Prin Артикул: & objItem.SKUDebug.Скорость печати: & objItem.SpeedDebug.Print Status: & objItem.StatusDebug.Print Tag: & objItem.TagDebug.Print TotalWidth: & objItem.TotalWidthDebug.Print TypeDetail: & objItem.TypeDetailDebug. Версия для печати: & objItem. ВерсияNextEnd SubИнформация об операционной системе
Private Sub Command1_Click()Dim wmiObjSet As SWbemObjectSetDim obj As SWbemObjectDim msg As StringDim dtb As StringDim d As StringDim t As StringDim смещение As LongOn Локальная ошибка Возобновить NextSet wmiObjSet = GetObject(winmgmts:{impersonationLevel=impersonate}).InstancesOf(Win32_OperatingSystem)Для каждого объекта в wmiObjSetMsgBox В настоящее время вы используете систему & obj.CaptionNextEnd Subпроиллюстрировать:
Вы можете найти правило. Фактически, WMI использует имя библиотеки WIN32_class для извлечения информации. В следующей таблице приведены описания различных классов оборудования операционной системы Microsoft.
Информация о других управляемых классах WMI находится в
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmisdk/wmi/accessing_hardware_and_software_through_wmi.asp
Вы можете найти его, в котором также есть пример кода.
Простая таблица классов Win_32
Классы Win32
Классы Microsoft® Windows® предоставляют вам средства для управления различными объектами. В следующей таблице указаны категории классов Windows.
Категория Описание
Аппаратное обеспечение компьютерной системы Классы, представляющие объекты, связанные с аппаратным обеспечением.
Классы операционной системы, представляющие объекты, связанные с операционной системой.
Установленные приложения Классы, представляющие объекты, связанные с программным обеспечением.
Управление службами WMI. Классы, используемые для управления WMI.
Счетчики производительности. Классы, представляющие форматированные и необработанные данные о производительности.
Аппаратное обеспечение
Классы аппаратного обеспечения компьютерной системы
Подкатегория «Охлаждающие устройства» объединяет классы, которые представляют собой измерительные вентиляторы, датчики температуры и холодильные устройства.
Описание класса
Win32_Fan Представляет свойства вентиляторного устройства в компьютерной системе.
Win32_HeatPipe Представляет свойства устройства охлаждения с тепловой трубкой.
Win32_ Холодильник Представляет свойства холодильного устройства.
Win32_TemperatureProbe Представляет свойства датчика температуры (электронного термометра).
Классы устройств ввода
Подкатегория «Устройства ввода» группирует классы, представляющие клавиатуры и указывающие устройства.
Описание класса
Win32_Keyboard Представляет клавиатуру, установленную в системе Windows.
Win32_PointingDevice Представляет устройство ввода, используемое для указания и выбора областей на дисплее компьютерной системы Windows.
Классы запоминающих устройств
Классы в подкатегории Mass Storage представляют устройства хранения данных, такие как жесткие диски, приводы CD-ROM и ленточные накопители.
Описание класса
Win32_AutochkSetting Представляет параметры автоматической проверки диска.
Win32_CDROMDrive Представляет дисковод компакт-дисков в компьютерной системе Windows.
Win32_DiskDrive Представляет физический диск, каким его видит компьютер под управлением операционной системы Windows.
Win32_FloppyDrive Управляет возможностями дисковода гибких дисков.
Win32_PhysicalMedia Представляет любой тип документации или носителя данных.
Win32_TapeDrive Представляет ленточный накопитель на компьютере под управлением Windows.
Классы материнской платы, контроллера и портов
Классы групп подкатегорий «Материнская плата», «Контроллеры» и «Порты», которые представляют системные устройства. Примеры включают системную память, кэш-память и контроллеры.
Описание класса
Win32_1394Controller Представляет возможности и управление контроллером 1394.
Win32_1394ControllerDevice Связывает контроллер высокоскоростной последовательной шины (IEEE 1394 Firewire) и подключенный к нему экземпляр CIM_LogicalDevice.
Win32_AllocatedResource Связывает логическое устройство с системным ресурсом.
Win32_AssociatedProcessorMemory Связывает процессор и его кэш-память.
Win32_BaseBoard Представляет основную плату (также известную как материнская плата или системная плата).
Win32_BIOS Представляет атрибуты базовых служб ввода-вывода (BIOS) компьютерной системы, установленных на компьютере.
Win32_Bus Представляет физическую шину, видимую операционной системой Windows.
Win32_CacheMemory Представляет кэш-память (внутреннюю и внешнюю) в компьютерной системе.
Win32_ControllerHasHub Представляет концентраторы, расположенные ниже по потоку от контроллера универсальной последовательной шины (USB).
Win32_DeviceBus Связывает системную шину и логическое устройство, использующее шину.
Win32_DeviceMemoryAddress Представляет адрес памяти устройства в системе Windows.
Win32_DeviceSettings Связывает логическое устройство и параметр, который можно к нему применить.
Win32_DMAchannel Представляет канал прямого доступа к памяти (DMA) в компьютерной системе Windows.
Win32_FloppyController Представляет возможности и возможности управления контроллера дисковода гибких дисков.
Win32_IDEController Представляет возможности устройства-контроллера Integrated Drive Electronics (IDE).
Win32_IDEControllerDevice Класс ассоциации, связывающий контроллер IDE и логическое устройство.
Win32_InfraredDevice Представляет возможности и управление инфракрасным устройством.
Win32_IRQResource Представляет номер линии запроса прерывания (IRQ) в компьютерной системе Windows.
Win32_MemoryArray Представляет свойства массива системной памяти компьютера и сопоставленные адреса.
Win32_MemoryArrayLocation Связывает массив логической памяти и массив физической памяти, в котором он существует.
Win32_MemoryDevice Представляет свойства устройства памяти компьютерной системы вместе со связанными с ним сопоставленными адресами.
Win32_MemoryDeviceArray Связывает устройство памяти и массив памяти, в котором оно находится.
Win32_MemoryDeviceLocation Класс ассоциации, который связывает устройство памяти и физическую память, в которой оно существует.
Win32_MotherboardDevice Представляет устройство, содержащее центральные компоненты компьютерной системы Windows.
Win32_OnBoardDevice Представляет распространенные адаптеры, встроенные в материнскую плату (системную плату).
Win32_ParallelPort Представляет свойства параллельного порта в компьютерной системе Windows.
Win32_PCMCIAController Управляет возможностями контроллера адаптера интерфейса карты памяти персонального компьютера (PCMCIA).
Win32_PhysicalMemory Представляет устройство физической памяти, расположенное на компьютере и доступное операционной системе.
Win32_PhysicalMemoryArray Представляет сведения о физической памяти компьютерной системы.
Win32_PhysicalMemoryLocation Связывает массив физической памяти и его физическую память.
Win32_PNPallocatedResource Представляет связь между логическими устройствами и системными ресурсами.
Win32_PNPDevice Связывает устройство (известное в Configuration Manager как PNPEntity) и функцию, которую оно выполняет.
Win32_PNPEntity Представляет свойства устройства Plug and Play.
Win32_PortConnector Представляет порты физического подключения, такие как штыревой разъем DB-25, Centronics и PS/2.
Win32_PortResource Представляет порт ввода-вывода в компьютерной системе Windows.
Win32_Processor Представляет устройство, способное интерпретировать последовательность машинных инструкций в компьютерной системе Windows.
Win32_SCSIController Представляет контроллер интерфейса небольшой компьютерной системы (SCSI) в системе Windows.
Win32_SCSIControllerDevice Связывает контроллер SCSI и подключенное к нему логическое устройство (дисковод).
Win32_SerialPort Представляет последовательный порт в системе Windows.
Win32_SerialPortConfiguration Представляет параметры передачи данных через последовательный порт Windows.
Win32_SerialPortSetting Связывает последовательный порт и параметры его конфигурации.
Win32_SMBIOSMemory Представляет возможности и управление логическими устройствами, связанными с памятью.
Win32_SoundDevice Представляет свойства звукового устройства в компьютерной системе Windows.
Win32_SystemBIOS Связывает компьютерную систему (включая такие данные, как свойства запуска, часовые пояса, конфигурации загрузки или административные пароли) и системный BIOS (службы, языки, свойства управления системой).
Win32_SystemDriverPNPEntity Связывает устройство Plug and Play в компьютерной системе Windows и драйвер, поддерживающий устройство Plug and Play.
Win32_SystemEnclosure Представляет свойства, связанные с физическим системным корпусом.
Win32_SystemMemoryResource Представляет ресурс системной памяти в системе Windows.
Win32_SystemSlot Представляет физические точки подключения, включая порты, слоты материнской платы и периферийные устройства, а также собственные точки подключения.
Win32_USBController Управляет возможностями контроллера универсальной последовательной шины (USB).
Win32_USBControllerDevice Связывает USB-контроллер и подключенные к нему экземпляры CIM_LogicalDevice.
Win32_USBHub Представляет характеристики управления USB-концентратором.
Классы сетевых устройств
Подкатегория «Сетевые устройства» группирует классы, которые представляют контроллер сетевого интерфейса, его конфигурации и настройки.
Описание класса
Win32_NetworkAdapter Представляет сетевой адаптер в системе Windows.
Win32_NetworkAdapterConfiguration Представляет атрибуты и поведение сетевого адаптера. Поддержка класса не гарантируется после утверждения сетевой спецификации CIM Distributed Management Task Force (DMTF).
Win32_NetworkAdapterSetting Связывает сетевой адаптер и параметры его конфигурации.
Классы мощности
Подкатегория «Питание» группирует классы, которые представляют источники питания, батареи и события, связанные с этими устройствами.
Описание класса
Win32_AssociatedBattery Связывает логическое устройство и батарею, которую оно использует.
Win32_Battery Представляет батарею, подключенную к компьютерной системе.
Win32_CurrentProbe Представляет свойства датчика контроля тока (амперметра).
Win32_PortableBattery Представляет свойства портативного аккумулятора, например, используемого в ноутбуке.
Win32_PowerManagementEvent Представляет события управления питанием, возникающие в результате изменений состояния питания.
Win32_UninterruptiblePowerSupply Представляет возможности и возможности управления источником бесперебойного питания (ИБП).
Win32_VoltageProbe Представляет свойства датчика напряжения (электронного вольтметра).
Печать классов
Подкатегория «Печать» группирует классы, которые представляют принтеры, конфигурации принтеров и задания на печать.
Описание класса
Win32_DriverForDevice Связывает принтер с драйвером принтера.
Win32_Printer Представляет устройство, подключенное к компьютерной системе Windows, способное воспроизводить визуальное изображение на носителе.
Win32_PrinterConfiguration Определяет конфигурацию принтера.
Win32_PrinterController Связывает принтер и локальное устройство, к которому подключен принтер.
Win32_PrinterDriver Представляет драйверы для экземпляра Win32_Printer.
Win32_PrinterDriverDll Связывает локальный принтер и файл его драйвера (а не сам драйвер).
Win32_PrinterSetting Связывает принтер и параметры его конфигурации.
Win32_PrintJob Представляет задание на печать, созданное приложением Windows.
Win32_TCPIPPrinterPort Представляет точку доступа к службе TCP/IP.
Классы телефонии
Подкатегория «Телефония» группирует классы, которые представляют обычные старые телефонные модемы и связанные с ними последовательные соединения.
Описание класса
Win32_POTSModem Представляет службы и характеристики модема обычной телефонной службы (POTS) в системе Windows.
Win32_POTSModemToSerialPort Связывает модем и последовательный порт, который использует модем.
Классы видео и мониторов
Подкатегория «Видео» и «Мониторы» группирует классы, которые представляют мониторы, видеокарты и связанные с ними настройки.
Описание класса
Win32_DesktopMonitor Представляет тип монитора или устройства отображения, подключенного к компьютерной системе.
Win32_DisplayConfiguration Представляет информацию о конфигурации устройства отображения в системе Windows. Этот класс устарел. Вместо этого класса используйте свойства классов Win32_VideoController, Win32_DesktopMonitor и CIM_VideoControllerResolution.
Win32_DisplayControllerConfiguration Представляет информацию о конфигурации видеоадаптера системы Windows. Этот класс устарел. Вместо этого класса используйте свойства классов Win32_VideoController, Win32_DesktopMonitor и CIM_VideoControllerResolution.
Win32_VideoConfiguration Этот класс исключен из Windows XP и более поздних версий; попытки его использования приведут к фатальной ошибке. Вместо этого класса используйте свойства, содержащиеся в классах Win32_VideoController, Win32_DesktopMonitor и CIM_VideoControllerResolution.
Win32_VideoController Представляет возможности и возможности управления видеоконтроллера в компьютерной системе Windows.
Win32_VideoSettings Связывает видеоконтроллер и настройки видео, которые можно к нему применить.
Каждый класс имеет соответствующую структуру данных, например
видеокарта
класс Win32_VideoController: CIM_PCVideoController
{
uint16 AcceleratorCapabilities[];
строка АдаптерСовместимость;
строковыйадаптерDACType;
uint32 АдаптерОЗУ;
uint16 Доступность;
строка CapabilityDescriptions[];
строка Заголовок;
uint32 ColorTableEntries;
uint32 ConfigManagerErrorCode;
логическое значение ConfigManagerUserConfig;
строка CreationClassName;
uint32 CurrentBitsPerPixel;
uint32 CurrentHorizontalResolution;
uint64 CurrentNumberOfColors;
uint32 CurrentNumberOfColumns;
uint32 CurrentNumberOfRows;
uint32 CurrentRefreshRate;
uint16 CurrentScanMode;
uint32 CurrentVerticalResolution;
строка Описание;
строка DeviceID;
uint32 DeviceSpecificPens;
uint32 Тип дизеринга;
дата и время DriverDate;
строка DriverVersion;
логическое значение ErrorCleared;
строка Описание ошибки;
uint32 ICMIntent;
uint32 ICMMethod;
строка InfFilename;
строка InfSection;
дата и время InstallDate;
строка InstalledDisplayDrivers;
uint32 LastErrorCode;
uint32 MaxMemorySupported;
uint32 MaxNumberControlled;
uint32 МаксРефрешРате;
uint32 МинРефрешРате;
логическое значение Монохромный;
строковое имя;
uint16 NumberOfColorPlanes;
uint32 ЧислоВидеоСтраниц;
строка PNPDeviceID;
uint16 PowerManagementCapabilities[];
логическое значение PowerManagementSupported;
uint16 Протокол поддерживается;
uint32 ReservedSystemPaletteEntries;
uint32 Версия спецификации;
строка Статус;
uint16 СтатусИнформация;
строка SystemCreationClassName;
строка ИмяСистемы;
uint32 SystemPaletteEntries;
дата и время TimeOfLastReset;
uint16 Видеоархитектура;
uint16 ТипВидеоМемори;
uint16 Видеорежим;
строка VideoModeDescription;
строка Видеопроцессор;
};
Звуковая карта и т. д.
класс Win32_SoundDevice: CIM_LogicalDevice
{
uint16 Доступность;
строка Заголовок;
uint32 ConfigManagerErrorCode;
логическое значение ConfigManagerUserConfig;
строка CreationClassName;
строка Описание;
строка DeviceID;
uint16 DMABufferSize;
логическое значение ErrorCleared;
строка Описание ошибки;
дата и время InstallDate;
uint32 LastErrorCode;
строка Производитель;
uint32 MPU401Адрес;
строковое имя;
строка PNPDeviceID;
uint16 PowerManagementCapabilities[];
логическое значение PowerManagementSupported;
строка ИмяПродукта;
строка Статус;
uint16 СтатусИнформация;
строка SystemCreationClassName;
строка ИмяСистемы;
};
класс Win32_PrintJob: CIM_Job
{
строка Заголовок;
строка ТипДанных;
строка Описание;
строковый документ;
строка ИмяДрайвера;
дата и время Истекшее время;
строка HostPrintQueue;
дата и время InstallDate;
uint32 Идентификатор задания;
строка JobStatus;
строковое имя;
строка Уведомить;
строка Владелец;
uint32 страницы напечатаны;
строковые параметры;
строка PrintProcessor;
uint32 Приоритет;
uint32 Размер;
дата и время StartTime;
строка Статус;
uint32 Статусная маска;
дата и время TimeSubmitted;
uint32 Всего страниц;
дата и время до времени;
};
нравиться
Установите wmiObjSet = GetObject(winmgmts:{impersonationLevel=impersonate}).
Экземпляры(Win32_PrintJob)
Вы можете получить такую информацию, как списки задач печати.
Для VB API в основном используется для получения информации об аппаратном и программном обеспечении системы. Теперь мы можем использовать WMI для быстрого достижения наших целей. Например, получение информации о драйверах/видеокартах/общей информации и т. д. станет удобным и эффективным.