Функция GetNames

Получает подмножество имен или все имена свойств объекта.

Примечание

Этот интерфейс API предназначен только для внутреннего использования. Он не предназначен для использования из кода разработчика.

Синтаксис

HRESULT GetNames (
   [in] int                 vFunc,
   [in] IWbemClassObject*   ptr,
   [in] LPCWSTR             wszQualifierName,
   [in] LONG                lFlags,
   [in] VARIANT*            pQualifierValue,
   [out] SAFEARRAY (BSTR)** pstrNames
);

Параметры

vFunc
[in] Этот параметр не используется.

ptr
[in] Указатель на экземпляр IWbemClassObject .

wszQualifierName
[in] Указатель на допустимый LPCWSTR объект , указывающий имя квалификатора, работающего как часть фильтра. Дополнительные сведения см. в разделе Примечания. Этот параметр может иметь значение null.

lFlags
[in] Сочетание битовых полей. Дополнительные сведения см. в разделе Примечания.

pQualifierValue [in] Указатель на допустимую VARIANT структуру, инициализированную на значение фильтра. Этот параметр может иметь значение null.

pstrNames
[out] Структура SAFEARRAY , содержащая имена свойств. При входе этот параметр всегда должен быть указателем на null. Дополнительные сведения см. в разделе Примечания .

Возвращаемое значение

Следующие значения, возвращаемые этой функцией, определяются в файле заголовка WbemCli.h или их можно определить как константы в коде:

Константа Значение Описание
WBEM_E_FAILED 0x80041001 Произошел общий сбой.
WBEM_E_INVALID_PARAMETER 0x80041008 Один или несколько параметров недопустимы или указано неправильное сочетание флагов и параметров.
WBEM_E_OUT_OF_MEMORY 0x80041006 Недостаточно памяти для выполнения операции.
WBEM_S_NO_ERROR 0 Вызов функции выполнен успешно.

Комментарии

Эта функция заключает в оболочку вызов метода IWbemClassObject::GetNames .

Возвращаемые имена управляются сочетанием флагов и параметров. Например, функция может возвращать имена всех свойств или только имена ключевых свойств. Основной фильтр указывается в параметре lFlags , а другие параметры зависят от него.

Значения флагов в представляют lFlags собой битовые поля

Флаги, которые можно передать в качестве аргумента lEnumFlags , представляют собой битовые поля, определенные в файле заголовка WbemCli.h , или их можно определить как константы в коде. Вы можете объединить один флаг из каждой группы с любым флагом из любой другой группы. Однако флаги из одной группы являются взаимоисключающими.

Флаги группы 1 Значение Описание
WBEM_FLAG_ALWAYS 0 Возвращает все имена свойств. strQualifierName и pQualifierVal не используются.
WBEM_FLAG_ONLY_IF_TRUE 1 Возвращает только те свойства, которые имеют квалификатор имени, заданного параметром strQualifierName . Если этот флаг используется, необходимо указать strQualifierName.
WBEM_FLAG_ONLY_IF_FALSE 2 Возвращает только те свойства, которые не имеют квалификатора имени, указанного параметром strQualifierName . Если этот флаг используется, необходимо указать strQualifierName.
WBEM_FLAG_ONLY_IF_IDENTICAL 3 Возвращает только те свойства, которые имеют квалификатор имени, заданного wszQualifierName параметром , а также имеют значение, идентичное значению, указанному в pQualifierVal структуре. Если этот флаг используется, необходимо указать и wszQualifierNamepQualifierValue.
Флаги группы 2 Значение Описание
WBEM_FLAG_KEYS_ONLY 0x4 Возвращает только имена свойств, определяющих ключи.
WBEM_FLAG_REFS_ONLY 0x8 Возвращает только имена свойств, которые являются ссылками на объекты.
Флаги группы 3 Значение Описание
WBEM_FLAG_LOCAL_ONLY 0x10 Возвращает только имена свойств, принадлежащие наиболее производного класса. Исключите свойства из родительских классов.
WBEM_FLAG_PROPAGATED_ONLY 0x20 Возвращает только имена свойств, принадлежащие родительским классам.
WBEM_FLAG_SYSTEM_ONLY 0x30 Возвращает только имена системных свойств.
WBEM_FLAG_NONSYSTEM_ONLY 0x40 Возвращает только имена несистемных свойств.

Функция всегда выделяет новый SAFEARRAY объект , если возвращает WBEM_S_NO_ERROR, и pstrNames всегда указывает на него. Возвращаемый массив может содержать 0 элементов, если никакие свойства не соответствуют указанным фильтрам. Если функция возвращает значение, отличное от WBM_S_NO_ERROR, новая SAFEARRAY структура не возвращается.

Требования

Платформы: см. раздел Требования к системе.

Заголовка: WMINet_Utils.idl

платформа .NET Framework версии: доступно с версии 4.7.2.

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