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