IMoniker::IsEqual

This method compares one moniker with another moniker.

HRESULT IsEqual( 
  IMoniker* pmkOtherMoniker
);

Parameters

  • pmkOtherMoniker
    [in] Pointer to the IMoniker interface on the moniker to be used for comparison with this one (the one from which this method is called).

Return Values

The following table shows the return values for this method.

Value Description
S_OK The two monikers are identical.
S_FALSE The two monikers are not identical.

Remarks

Previous implementations of the Running Object Table (ROT) called this method. The current implementation of the ROT uses the IROTData interface instead.

To determine whether the platform supports this interface, see Determining Supported COM APIs.

Notes to Callers

Call this method to determine if two monikers are identical or not. Note that the reduced form of a moniker is considered different from the unreduced form. You should call the IMoniker::Reduce method before calling IMoniker::IsEqual, because a reduced moniker is in its most specific form. IMoniker::IsEqual may return S_FALSE on two monikers before they are reduced, and S_OK after they are reduced.

Notes to Implementers

Your implementation should not reduce the current moniker before performing the comparison. It is the caller's responsibility to call IMoniker::Reduce in order to compare reduced monikers.

Note that two monikers that compare as equal must hash to the same value using the IMoniker::Hash method.

Requirements

OS Versions: Windows CE 2.0 and later.
Header: Objidl.h, Objidl.idl.
Link Library: Ole32.lib, Uuid.lib.

See Also

IMoniker::Hash | IMoniker::Reduce | IROTData

Last updated on Wednesday, April 13, 2005

© 2005 Microsoft Corporation. All rights reserved.