Compartilhar via


Função CompareTo

Compara um objeto a outro objeto de gerenciamento do Windows.

Observação

Esta API é somente para uso interno. Ela não é destinada ao uso do código do desenvolvedor.

Sintaxe

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

Parâmetros

vFunc
[in] Esse parâmetro não está em uso.

ptr
[in] Um ponteiro para uma instância IWbemClassObject.

flags
[in] Uma combinação de bit a bit dos sinalizadores que especificam as características do objeto a serem consideradas para a comparação. Consulte a seção Comentários para obter mais informações.

pCompareTo
[in] O objeto para comparação. pCompareTo deve ser uma instância IWbemClassObject válida e não pode ser null.

Valor retornado

Os seguintes valores retornados por essa função são definidos no arquivo de cabeçalho WbemCli.h, ou você pode defini-los como constantes em seu código:

Constante Valor Descrição
WBEM_E_FAILED 0x80041001 Ocorreu um erro não especificado.
WBEM_E_INVALID_PARAMETER 0x80041008 Um parâmetro é inválido.
WBEM_E_UNEXPECTED 0x8004101d Uma segunda chamada para BeginEnumeration foi feita sem uma chamada intervindo para EndEnumeration.
WBEM_S_NO_ERROR 0 A chamada de função foi bem-sucedida.
WBEM_S_DIFFERENT 0x40003 Os objetos são diferentes.
WBEM_S_SAME 0 Os objetos são os mesmos com base nos sinalizadores de comparação.

Comentários

Essa função encapsula uma chamada para o método IWbemClassObject::CompareTo.

Os sinalizadores que podem ser passados como o argumento lEnumFlags são definidos no arquivo de cabeçalho WbemCli.h ou você pode defini-los como constantes em seu código. Você pode especificar as características individuais envolvidas na comparação especificando uma combinação de bit a bit dos seguintes sinalizadores:

Constante Valor Descrição
WBEM_FLAG_IGNORE_OBJECT_SOURCE 2 Ignorar a origem (o servidor e o namespace de onde eles vieram).
WBEM_FLAG_IGNORE_QUALIFIERS 1 Ignorar todos os qualificadores (incluindo Chave e Dinâmica)
WBEM_FLAG_IGNORE_DEFAULT_VALUES 4 Ignorar os valores padrão das propriedades. Esse sinalizador só se aplica à comparação de classes.
WBEM_FLAG_IGNORE_FLAVOR 0x20 Ignorar os tipos de qualificador. Este sinalizador ainda considera os qualificadores, mas ignora diferenças de tipo como regras de propagação e restrições de substituição.
WBEM_FLAG_IGNORE_CASE 0x10 Ignorar maiúsculas e minúsculas na comparação de valores de cadeia de caracteres. Isso se aplica a cadeias de caracteres e valores de qualificador. A comparação de nomes de propriedade e qualificador sempre diferencia maiúsculas de minúsculas, independentemente de esse sinalizador ser definido.
WBEM_FLAG_IGNORE_CLASS 0x8 Considera que os objetos que estão sendo comparados são instâncias da mesma classe. Consequentemente, esse sinalizador compara somente informações relacionadas a instâncias. Use este sinalizador para otimizar o desempenho. Se os objetos não são da mesma classe, os resultados são indefinidos.

Ou você pode especificar um único sinalizador composto da seguinte maneira:

Constante Valor Descrição
WBEM_COMPARISON_INCLUDE_ALL 0 Considere todos os recursos na comparação.

Requisitos

Plataformas: confira Requisitos do sistema.

Header: WMINet_Utils.idl

Versões do .NET Framework: Disponível desde 4.7.2

Confira também