IMoniker::Hash
Calculates a
32-bit integer using the internal state of the moniker.
HRESULT Hash(
DWORD *pdwHash |
//Pointer to hash value |
); |
|
Parameter
pdwHash
[out] Pointer
to the hash value.
Return Value
S_OK
Successfully received
a 32-bit integer hash value.
Remarks
Notes to Callers
You can use
the value returned by this method to maintain a hash table of monikers. The
hash value determines a hash bucket in the table. To search such a table for a
specified moniker, calculate its hash value and then compare it to the monikers
in that hash bucket using IMoniker::IsEqual
Notes to Implementers
The hash
value must be constant for the lifetime of the moniker. Two monikers that
compare as equal using IMoniker::IsEqual
Marshaling
and then unmarshaling a moniker should have no effect on its hash value.
Consequently, your implementation of IMoniker::Hash should rely only on
the internal state of the moniker, not on its memory address.
See Also