Класс __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

См. также раздел

__ProviderRegistration

Системные классы WMI

Регистрация поставщика