Поделиться через


Архитектура WMI

WMI предоставляет универсальный интерфейс для любых локальных или удаленных приложений или сценариев, которые получают данные управления из компьютерной системы, сети или предприятия. Универсальный интерфейс разработан таким образом, чтобы клиентские приложения и скрипты WMI не должны вызывать широкий спектр интерфейсов программирования приложений операционной системы (API). Многие API не могут вызываться клиентами автоматизации, такими как скрипты или приложения Visual Basic. Другие API не выполняют вызовы к удаленным компьютерам.

Чтобы получить данные из WMI, напишите клиентский скрипт или приложение, которое обращается к классам WMI или предоставьте данные для WMI, написавпоставщика WMI. Дополнительные сведения см. в разделе ИспользованиеWMI.

Объекты, потребители и инфраструктура WMI

На следующей схеме показана связь между инфраструктурой WMI и поставщиками WMI и управляемыми объектами, а также показана связь между инфраструктурой WMI и потребителями WMI.

связи между инфраструктурой wmi, поставщиками wmi и управляемыми объектами

Компоненты WMI

В следующем списке описаны ключевые компоненты WMI:

  • Управляемые объекты и поставщики WMI

    Поставщик WMI — это COM-объект, отслеживающий один или несколько управляемых объектов для WMI. Управляемый объект — это логический или физический корпоративный компонент, например жесткий диск, сетевой адаптер, система базы данных, операционная система, процесс или служба.

    Как и драйвер, поставщик предоставляет WMI с данными из управляемого объекта и обрабатывает сообщения из WMI в управляемый объект. Поставщики WMI состоят из DLL-файла и файлаформата управляемого объекта (MOF), который определяет классы, для которых поставщик возвращает данные и выполняет операции. Поставщики, такие как приложения WMI C++, используют COM-API для WMI. Дополнительные сведения см. в предоставлении данныхWMI.

    Примером поставщика является предустановленный поставщик регистратора, который обращается к данным в системном реестре. У поставщика реестра есть один класс WMI, StdRegProvс множеством методов, но не имеет свойств. Другие предварительно установленные поставщики, такие как поставщик Win32, обычно имеют классы со многими свойствами, но мало методов, таких как Win32_Process или Win32_LogicalDisk. DLL-файл поставщика реестра Stdprov.dllсодержит код, динамически возвращающий данные при запросе клиентских скриптов или приложений.

    MOF-файлы WMI и DLL находятся в %WINDIR%\System32\Wbem, а также средства WMI Command-Line, такие как Winmgmt.exe и Mofcomp.exe. Классы поставщиков, такие как Win32_LogicalDisk, определяются в MOF-файлах, а затем компилируются в репозиторий WMI при запуске системы.

  • инфраструктуры WMI

    Инфраструктура WMI — это компонент операционной системы Microsoft Windows, известный как служба WMI (winmgmt). Инфраструктура WMI имеет два компонента: WMI Core и репозиторий WMI.

    Репозиторий WMI организован пространства имен WMI. Служба WMI создает некоторые пространства имен, такие как root\default, root\cimv2 и root\subscription при запуске системы и предустановки набора определений классов по умолчанию, включая классов Win32, системные классы WMIи другие. Остальные пространства имен, найденные в вашей системе, создаются поставщиками для других частей операционной системы или продуктов. Дополнительные сведения и список поставщиков WMI, найденных в большинстве версий операционной системы, см. в разделе поставщиков WMI.

    Служба WMI выступает в качестве посредника между поставщиками, приложениями управления и репозиторием WMI. В репозитории хранятся только статические данные об объектах, например классы, определенные поставщиками. WMI получает большинство данных динамически от поставщика, когда клиент запрашивает его. Вы также можете настроить подписки для получения уведомлений о событиях от поставщика. Дополнительные сведения см. в событий мониторинга.

  • Потребители WMI

    Потребитель WMI — это приложение управления или скрипт, взаимодействующее с инфраструктурой WMI. Приложение управления может запрашивать, перечислять данные, запускать методы поставщика или подписываться на события, вызывая COM API для WMI или API скриптов для WMI. Единственными данными или действиями, доступными для управляемого объекта, например диска или службы, являются те, которые предоставляет поставщик.

использование WMI

поставщиков WMI

создание приложения или скрипта WMI

задачи WMI для сценариев и приложений

предоставление данных WMI

классов WMI

события мониторинга

вызов метода