Функция CompareTo

Сравнивает объект с другим объектом управления Windows.

Примечание

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

Синтаксис

HRESULT CompareTo (
   [in] int               vFunc,
   [in] IWbemClassObject* ptr,
   [in] LONG              flags,
   [in] IWbemClassObject* pCompareTo
);

Параметры

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

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

flags
[in] Побитовое сочетание флагов, задающих характеристики объекта, которые необходимо учитывать при сравнении. Дополнительные сведения см. в разделе Примечания .

pCompareTo
[in] Объект для сравнения. pCompareTo должен быть допустимым экземпляром IWbemClassObject ; Он не может быть null.

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

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

Константа Значение Описание
WBEM_E_FAILED 0x80041001 Возникла неопределенная ошибка.
WBEM_E_INVALID_PARAMETER 0x80041008 Недопустимый параметр.
WBEM_E_UNEXPECTED 0x8004101d Второй вызов был BeginEnumeration выполнен без промежуточного вызова EndEnumeration.
WBEM_S_NO_ERROR 0 Вызов функции выполнен успешно.
WBEM_S_DIFFERENT 0x40003 Объекты различаются.
WBEM_S_SAME 0 Объекты одинаковы на основе флагов сравнения.

Комментарии

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

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

Константа Значение Описание
WBEM_FLAG_IGNORE_OBJECT_SOURCE 2 Игнорируйте источник (сервер и пространство имен, откуда они поступили).
WBEM_FLAG_IGNORE_QUALIFIERS 1 Игнорировать все квалификаторы (включая Key и Dynamic)
WBEM_FLAG_IGNORE_DEFAULT_VALUES 4 Игнорировать значения свойств по умолчанию. Этот флаг применяется только к сравнению классов.
WBEM_FLAG_IGNORE_FLAVOR 0x20 Игнорируйте варианты квалификатора. Этот флаг по-прежнему учитывает квалификаторы, но игнорирует различия вкуса, такие как правила распространения и ограничения переопределения.
WBEM_FLAG_IGNORE_CASE 0x10 Игнорируйте регистр при сравнении строковых значений. Это относится как к строкам, так и к значениям квалификатора. При сравнении имен свойств и квалификатора всегда учитывается регистр независимо от того, установлен ли этот флаг.
WBEM_FLAG_IGNORE_CLASS 0x8 Предположим, что сравниваемые объекты являются экземплярами одного класса. Следовательно, этот флаг сравнивает только сведения, связанные с экземпляром. Используйте эти флаги для оптимизации производительности. Если объекты не являются экземплярами одного класса, результаты будут неопределенными.

Или можно указать один составной флаг следующим образом:

Константа Значение Описание
WBEM_COMPARISON_INCLUDE_ALL 0 Рассмотрим все признаки в сравнении.

Требования

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

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

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

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