Метод 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 (include 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