Класс __ObjectProviderRegistration
Абстрактный системный класс __ObjectProviderRegistration служит родительским классом для классов, которые используются для регистрации поставщиков классов и экземпляров в инструментарии WMI.
Приведенный ниже синтаксис является упрощенной версией кода MOF и включает все унаследованные свойства. Свойства перечислены в алфавитном порядке, а не в порядке MOF.
Синтаксис
[abstract]
class __ObjectProviderRegistration : __ProviderRegistration
{
sint32 InteractionType = 0;
__Provider REF provider;
string QuerySupportLevels[];
boolean SupportsBatching;
boolean SupportsDelete = False;
boolean SupportsEnumeration = False;
boolean SupportsGet = False;
boolean SupportsPut = False;
boolean SupportsTransactions;
};
Члены
Класс __ObjectProviderRegistration имеет следующие типы членов:
Элемент Property
Класс __ObjectProviderRegistration имеет следующие свойства.
-
InteractionType
-
-
Тип данных: sint32
-
Тип доступа: чтение и запись
Указывает, предоставляет ли поставщик класса или экземпляра собственные данные или использует инструментарий WMI и репозиторий CIM. Поставщики запросов поддерживают динамический доступ к своим данным, а поставщики push-уведомлений хранят свои данные в репозитории CIM и используют инструментарий WMI для предоставления доступа к ним. Дополнительные сведения см. в разделе Определение состояния отправки или вытягивания. Значение по умолчанию — 0 (нуль).
-
-
Вытягивание (0)
-
Поставщик — это поставщик по запросу.
-
Push (1)
-
Поставщик является поставщиком push-уведомлений.
-
PushVerify (2)
-
Поставщик — это поставщик принудительной проверки. Обратите внимание, что принудительная проверка в настоящее время не поддерживается.
provider
-
Тип данных: __Provider
-
Тип доступа: только для чтения
Ссылка на экземпляр __Provider , представляющий путь к объекту к поставщику объектов. Это свойство наследуется от __ProviderRegistration.
QuerySupportLevels
-
Тип данных: строковый массив
-
Тип доступа: чтение и запись
Массив типов поддержки обработки запросов, включенных поставщиком. Поставщики классов не поддерживают запросы любого типа. Поставщики экземпляров могут задать для QuerySupportLevelsзначение NULL , если они не поддерживают обработку запросов. Поставщики, поддерживающие запросы, реализуют метод IWbemServices::ExecQueryAsync и присваивают этому свойству одно или несколько из следующих значений (тип свойства — массив).
"WQL:UnarySelect"
"WQL:References"
"WQL:Associators"
"WQL:V1ProviderDefined"
SupportsBatching
-
Тип данных: boolean
-
Тип доступа: чтение и запись
Не используется.
SupportsDelete
-
Тип данных: boolean
-
Тип доступа: чтение и запись
Если задано значение True, поставщик поддерживает удаление данных.
True
Поставщик поддерживает удаление класса или экземпляра путем реализации одного из IWbemServices::D eleteClassAsync (поставщики классов) или IWbemServices::D eleteInstanceAsync (поставщики экземпляров).
Неверно
Поставщик не поддерживает удаление данных и возвращает WBEM_E_PROVIDER_NOT_CAPABLE из DeleteClassAsync или DeleteInstanceAsync.
SupportsEnumeration
-
Тип данных: boolean
-
Тип доступа: чтение и запись
Если задано значение True, поставщик поддерживает перечисление данных.
True
Поставщик поддерживает перечисление данных путем реализации одного из IWbemServices::CreateClassEnumAsync (поставщики классов) или IWbemServices::CreateInstanceEnumAsync (поставщики экземпляров).
Неверно
Поставщик не поддерживает перечисление данных и возвращает WBEM_E_PROVIDER_NOT_CAPABLE из CreateClassEnumAsync или CreateInstanceEnumAsync.
SupportsGet
-
Тип данных: boolean
-
Тип доступа: чтение и запись
Если задано значение True, поставщик класса или экземпляра поддерживает извлечение данных.
True
Поставщик поддерживает извлечение данных путем реализации IWbemServices::GetObjectAsync.
Неверно
Поставщик не поддерживает получение данных и возвращает WBEM_E_PROVIDER_NOT_CAPABLE из GetObjectAsync.
SupportsPut
-
Тип данных: boolean
-
Тип доступа: чтение и запись
Если задано значение True, поставщик класса или экземпляра поддерживает изменение данных.
True
Поставщик поддерживает изменение класса или экземпляра путем реализации одного из IWbemServices::P utClassAsync (поставщики классов) или IWbemServices::P utInstanceAsync (поставщики классов).
Неверно
Поставщик не поддерживает изменение данных и возвращает WBEM_E_PROVIDER_NOT_CAPABLE из PutClassAsync или PutInstanceAsync.
SupportsTransactions
-
Тип данных: boolean
-
Тип доступа: чтение и запись
Не используется.
Комментарии
Класс __ObjectProviderRegistration является производным от __ProviderRegistration.
Поставщики классов должны присвоить свойству SupportsEnumeration значение True , так как поставщики должны иметь возможность предоставлять WMI список своих классов. Если поставщик класса пытается присвоить этому свойству значение False, WMI помечает регистрацию как недопустимую. Поставщики экземпляров не требуют поддержки перечисления и могут выбрать для параметра SupportsEnumerationзначение True или False.
Поставщик, который задает для QuerySupportLevels значение "WQL:UnarySelect", может принять запрос, состоящий из базовой инструкции SELECT, которая поддерживается в WMI версии 1.0. Ожидается, что поставщики классов и экземпляров смогут обрабатывать системное свойство __CLASS . Поставщики классов также должны обрабатывать системное свойство __SUPERCLASS и оператор ISA. Оператор ISA используется для расширения результирующий набор до производных классов. Если поставщику предоставляется запрос, который он не может интерпретировать, он запрашивает, чтобы WMI обработал его, возвращая значение ошибки WBEM_E_TOO_COMPLEX . Описание допустимого синтаксиса WQL см. в разделе Запросы с помощью WQL.
Поставщик, который задает для QuerySupportLevels значение WQL:V1ProviderDefined , может попытаться поддерживать более широкий набор синтаксиса SQL на свой страх и риск, например ORDER BY
предложение . WMI не интерпретирует дополнительные предложения или пытается убедиться, что результирующий набор является правильным.
Только администраторы могут зарегистрировать или удалить поставщика, создав экземпляр __Win32Provider и зарегистрировав его.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows Vista |
Минимальная версия сервера |
Windows Server 2008 |
Пространство имен |
Все пространства имен WMI |