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


Метод IWbemClassObject::GetNames (wbemcli.h)

Метод IWbemClassObject::GetNames извлекает имена свойств в объекте . Кроме того, в зависимости от предоставленных пользователем критериев выбора он может получить все или подмножество свойств. Затем доступ к этим свойствам можно получить с помощью IWbemClassObject::Get для каждого имени. Этот метод также может возвращать системные свойства.

Синтаксис

HRESULT GetNames(
  [in]  LPCWSTR   wszQualifierName,
  [in]  long      lFlags,
  [in]  VARIANT   *pQualifierVal,
  [out] SAFEARRAY **pNames
);

Параметры

[in] wszQualifierName

Параметр, который может иметь значение NULL. Если значение не равно NULL, оно должно указывать на допустимый LPCWSTR , указывающий имя квалификатора, которое работает как часть фильтра. Этот параметр обрабатывается как доступный только для чтения. Дополнительные сведения см. в подразделе "Примечания".

[in] lFlags

Дополнительные сведения см. в подразделе "Примечания".

[in] pQualifierVal

Параметр, который может иметь значение NULL. Если значение не равно NULL, оно должно указывать на допустимую структуру VARIANT , инициализированную значением фильтра. Этот вариант VARIANT обрабатывается методом как доступный только для чтения. Таким образом, при необходимости вызывающий объект должен вызвать VariantClear . Дополнительные сведения см. в подразделе "Примечания".

[out] pNames

Параметр, который не может иметь значение NULL, но при входе этот параметр должен указывать на NULL. Всегда выделяется новая структура SAFEARRAY , а указатель указывает на нее. Возвращаемый массив может содержать 0 элементов, но всегда выделяется при возврате WBEM_S_NO_ERROR . При ошибке новая структура SAFEARRAY не возвращается.

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

Этот метод возвращает HRESULT , указывающий состояние вызова метода. В следующем списке перечислены значения, содержащиеся в HRESULT. Общие значения HRESULT см. в разделе Системные коды ошибок.

Комментарии

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

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

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

Пустой список не является ошибкой, возвращаемой в тех случаях, когда свойства не соответствуют указанным фильтрам.

Дополнительные сведения об использовании структур SAFEARRAY значений BSTR см. в разделе Извлечение части экземпляра WMI.

Требования

   
Минимальная версия клиента Windows Vista
Минимальная версия сервера Windows Server 2008
Целевая платформа Windows
Header wbemcli.h (включая Wbemidl.h)
Библиотека WbemUuid.lib
DLL CIMWin32.dll; Esscli.dll; Fastprox.dll; FrameDyn.dll; FrameDynOS.dll; Krnlprov.dll; Ncprov.dll; Wbemcore.dll; Wbemess.dll; Wmipiprt.dll

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

IWbemClassObject

IWbemClassObject::BeginEnumeration

IWbemClassObject::Get

WBEM_CONDITION_FLAG_TYPE

Свойства системы WMI