Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
API компонента WMI (COM) можно использовать для записи клиентских приложений управления или созданияпоставщика WMI. Справочник по COM API предоставляет сведения для расширенных системных администраторов, а также разработчиков, которые пишут клиентские и поставщики приложений.
Дополнительные сведения о написании корпоративных приложений управления WMI см. в создании приложения WMI с помощьюC++. Дополнительные сведения о написании поставщика WMI см. в предоставлении данныхWMI.
Заметка
WMI поддерживает только разработку C++ с помощью систем разработки Microsoft Visual C++ версии 6.0 и более поздних версий. Однако вы также можете использовать другие компиляторы, такие как Борланд и Watcom.
Каждый из различных объектов WMI наследуется от интерфейса в конечном счете наследуется от интерфейса IUnknown. COM определяет способ реализации объектов или интерфейсов, обрабатывать такие задачи, как управление памятью, управление параметрами и многопоточность. В соответствии с COM API COM для WMI обеспечивает поддержку функциональных возможностей, предоставляемых интерфейсами каждого объекта WMI.
Доступ к WMI осуществляется через следующие интерфейсы COM для определенных WMI.
Интерфейс | Описание |
---|---|
IEnumWbemClassObject | Перечислитель, который работает с объектами типа IWbemClassObject. Он аналогичен стандартным перечислителям COM, таким как IEnumVariant. |
IMofCompiler | Реализован Mofd.dll, этот интерфейс предоставляет COM-интерфейс, используемый компилятором MOF и другими приложениями, которые компилируют MOF-файлы. |
IUnsecuredApartment | Используется для упрощения процесса асинхронных вызовов из клиентского процесса. |
IWbemBackupRestore | Резервное копирование и восстановление содержимого репозитория WMI. |
IWbemCallResult | Используется для полусинхронных вызовов интерфейса IWbemServices. При выполнении таких вызовов вызываемый метод IWbemServices возвращается немедленно, а также объект IWbemCallResult. |
IWbemCausalityAnalysis | Отслеживает дочерние запросы, созданные из родительского запроса. |
IWbemClassObject | Содержит и управляет определениями классов и экземплярами объектов класса. Разработчикам не нужно реализовать этот интерфейс; WMI предоставляет свою реализацию. |
IWbemConfigureRefresher | Используется клиентским кодом для добавления или удаления перечислителей, объектов и вложенных обновлений в средство обновления. |
IWbemContext | При необходимости используется для передачи дополнительных сведений о контексте поставщикам при отправке IWbemServices вызовы управления Windows. |
IWbemDecoupledBasicEventProvider | Регистрирует развязанные поставщики с помощью WMI. |
IWbemDecoupledRegistrar | Связывает поставщиков, разделенных с WMI. Этот интерфейс позволяет поставщику, размещенного в процессе, определить время существования интерфейса и сосуществовать с другими поставщиками. |
IWbemEventConsumerProvider | Предоставляет основной интерфейс для поставщика потребителей событий. Через этот интерфейс и метод FindConsumer поставщик событий может указать, какие потребители событий должны получать данное событие. |
IWbemEventProvider | Используется для запуска связи с поставщиком событий. |
IWbemEventProviderQuerySink | При необходимости реализованы поставщиками событий, которые хотят знать, какие типы фильтров запросов событий в настоящее время активны для оптимизации производительности. |
IWbemEventProviderSecurity | При необходимости реализуется поставщиками событий, которые хотят ограничить доступ потребителей к их событию. |
IWbemEventSink | Инициирует взаимодействие с поставщиком событий с помощью ограниченного набора запросов. Этот интерфейс расширяет IWbemObjectSink, предоставляя новые методы, связанные с безопасностью и производительностью. |
IWbemHiPerfProvider | Позволяет поставщикам предоставлять обновляемые объекты и перечислители. |
IWbemHiPerfEnum | Используется в операциях обновления для быстрого доступа к перечислениям объектов экземпляров. |
IWbemLocator | Получает начальный указатель пространства имен на интерфейс IWbemServices для WMI на определенном хост-компьютере. |
IWbemObjectAccess | Предоставляет доступ к методам и свойствам объекта. Объект IWbemObjectAccess — это контейнер для экземпляра, обновляемогообновления. |
IWbemObjectSink | Используется для получения результатов IWbemServices и определенных типов уведомлений о событиях. |
IWbemObjectTextSrc | Используется для перевода экземпляров IWbemClassObject и от разных текстовых форматов. |
IWbemPropertyProvider | Поддерживает получение и обновление отдельных свойств в экземпляре класса WMI. |
IWbemProviderIdentity | Реализуется поставщиком событий, если поставщик регистрируется с помощью нескольких name (несколько экземпляров __Win32Provider) с одинаковым значением CLSID. Класс предоставляет механизм для различения именованного поставщика. |
IWbemProviderInit | Используется для инициализации поставщиков. |
IWbemProviderInitSink | Реализуется WMI и вызывается поставщиками, чтобы сообщить о состоянии инициализации. |
IWbemQualifierSet | Выступает в качестве контейнера для всего набора именованных квалификаторов для одного свойства или всего объекта (класса или экземпляра). |
IWbemQuery | Предоставляет точку входа, с помощью которой можно проанализировать язык запросов WMI (WQL). |
IWbemRefresher | Предоставляет точку входа, с помощью которой можно обновить объекты, такие как перечислители или объекты обновления, можно обновить. |
IWbemServices | Используется клиентами и поставщиками для доступа к службам WMI. Интерфейс реализуется только WMI и является основным интерфейсом WMI. |
IWbemStatusCodeText | Извлекает текстовое описание кодов ошибок или имя подсистемы, в которой произошла ошибка. |
IWbemUnboundObjectSink | Реализовано всеми потребителями логических событий. Это простой интерфейс приемника, который принимает доставку объектов событий. |
Заметка
Многие функции COM WMI возвращают числовые коды ошибок, которые документируются как именованные константы. Эти константы определены в Wbemcli.h в папке WMI\Include PSDK. Дополнительные сведения см. в кодов возврата WMI.
Дополнительные сведения о следующих разделах программирования COM см. в разделе Разработка компонентов:
- Интерфейсы и конструктор объектов.
- Реализация IUnknown.
- Управление памятью
- Обработка подсчета ссылок.
Связанные разделы