IMoniker Interface
We'll now look in detail at IMoniker interface its supporting functions and structures.
interface IMoniker : IPersistStream {
HRESULT BindToObject(pbc, pmkToLeft, iidResult, ppvResult);
HRESULT BindToStorage(pbc, pmkToLeft, iid, ppvObj);
HRESULT Reduce(pbc, dwReduceHowFar, ppmkToLeft, ppmkReduced);
HRESULT ComposeWith(pmkRight, fOnlyIfNotGeneric, ppmkComposite)
HRESULT Enum(fForward, ppenmMoniker);
HRESULT IsEqual(pmkOtherMoniker);
HRESULT Hash(pdwHash);
HRESULT IsRunning(pbc, pmkToLeft, pmkNewlyRunning);
HRESULT GetTimeOfLastChange(pbc, pmkToLeft, pfiletime);
HRESULT Inverse(ppmk);
HRESULT CommonPrefixWith(pmkOther, ppmkPrefix);
HRESULT RelativePathTo(pmkOther, ppmkRelPath);
HRESULT GetDisplayName(pbc, pmkToLeft, lplpszDisplayName);
HRESULT ParseDisplayName(pbc, pmkToLeft, lpszDisplayName, pcchEaten, ppmkOut);
HRESULT IsSystemMoniker(pdwMksys);
};
HRESULT BindMoniker(pmk, reserved, iidResult, ppvResult);
HRESULT CreateBindCtx(reserved, ppbc);
HRESULT MkParseDisplayName(pbc, lpszDisplayName, pcchEaten, ppmk);
interface IParseDisplayName : IUnknown {
HRESULT ParseDisplayName(pbc, lpszDisplayName, pcchEaten, ppmkOut);
};
HRESULT CreateGenericComposite(pmkFirst, pmkRest, ppmkComposite);
HRESULT CreateFileMoniker(lpszPathName, ppmk);
HRESULT CreateItemMoniker(lpszDelim, lpszItem, ppmk);
HRESULT CreateAntiMoniker(ppmk);
HRESULT CreatePointerMoniker(punk, ppmk);