Método IMoniker::IsEqual (objidl.h)
Determina se esse moniker é idêntico ao moniker especificado.
Sintaxe
HRESULT IsEqual(
[in] IMoniker *pmkOtherMoniker
);
Parâmetros
[in] pmkOtherMoniker
Um ponteiro para a interface IMoniker no moniker a ser usado para comparação com este (aquele do qual esse método é chamado).
Retornar valor
Esse método retorna S_OK para indicar que os dois monikers são idênticos e S_FALSE caso contrário.
Comentários
Implementações anteriores da ROT (tabela de objetos em execução) chamavam esse método. Em vez disso, a implementação atual do ROT usa a interface IROTData .
Anotações aos Chamadores
Chame esse método para determinar se dois monikers são idênticos. A forma reduzida de um moniker é considerada diferente da forma não induzida. Você deve chamar o método IMoniker::Reduce antes de chamar IsEqual, pois um moniker reduzido está em sua forma mais específica. IsEqual pode retornar S_FALSE em dois monikers antes de serem reduzidos e S_OK após serem reduzidos.Observações aos implementadores
Sua implementação não deve reduzir o moniker atual antes de executar a comparação. É responsabilidade do chamador chamar IMoniker::Reduce para comparar monikers reduzidos.Dois monikers que se comparam como iguais devem ter o mesmo valor usando IMoniker::Hash.
Notas específicas da implementação
Implementação | Observações |
---|---|
Anti-moniker | Esse método retornará S_OK se ambos forem anti-monikers; caso contrário, ele retornará S_FALSE. |
Moniker de classe | Esse método retornará S_OK se pmkOther for um moniker de classe construído com as mesmas informações de CLSID que ele mesmo. Caso contrário, o método retornará S_FALSE. Pode retornar E_INVALIDARG se pmkOther for um ponteiro inválido. |
Moniker de arquivo | Esse método retornará S_OK se *pmkOther for um moniker de arquivo e os caminhos para ambos os monikers forem idênticos (usando uma comparação que não diferencia maiúsculas de minúsculas). Caso contrário, o método retornará S_FALSE. |
Moniker composto genérico | Esse método retornará S_OK se os componentes de ambos os monikers forem iguais quando comparados na ordem da esquerda para a direita. |
Moniker de item | Esse método retornará S_OK se ambos os monikers forem monikers de item e seus nomes de exibição forem idênticos (usando uma comparação que não diferencia maiúsculas de minúsculas); caso contrário, o método retornará S_FALSE. |
Moniker OBJREF | Esse método retornará S_OK se *pmkOther for um moniker OBJREF e os caminhos para ambos os monikers forem idênticos (usando uma comparação que não diferencia maiúsculas de minúsculas). Caso contrário, o método retornará S_FALSE. |
Moniker de ponteiro | Esse método retornará S_OK somente se ambos forem monikers de ponteiro e os ponteiros de interface que eles encapsularem forem idênticos. |
Moniker de URL | Retorna S_FALSE se o outro moniker (pmkOtherMoniker) não for um moniker de URL, que ele verifica usando IPersist::GetClassID para ver se o CLSID está CLSID_URLMoniker. Se o outro moniker for um moniker de URL, ele comparará os nomes de exibição dos monikers quanto à igualdade, retornando S_OK se forem idênticos ou S_FALSE caso contrário. |
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | objidl.h |