26#define NONAMELESSUNION
80 IMoniker_AddRef(iface);
114 if (
This->pObject) IUnknown_Release(
This->pObject);
127 TRACE(
"(%p,%p)\n",iface,pClassID);
132 *pClassID = CLSID_PointerMoniker;
147 TRACE(
"(%p)\n",iface);
158 TRACE(
"(%p)\n", pStm);
169 TRACE(
"(%p, %d)\n", pStm, fClearDirty);
183 TRACE(
"(%p,%p)\n",iface,pcbSize);
188 pcbSize->
u.LowPart = 0;
189 pcbSize->
u.HighPart = 0;
208 return IUnknown_QueryInterface(
This->pObject,
riid, ppvResult);
225 return IUnknown_QueryInterface(
This->pObject,
riid, ppvResult);
235 TRACE(
"(%p,%p,%d,%p,%p)\n",iface,pbc,dwReduceHowFar,ppmkToLeft,ppmkReduced);
237 if (ppmkReduced==
NULL)
260 TRACE(
"(%p,%d,%p)\n", pmkRight, fOnlyIfNotGeneric, ppmkComposite);
262 if ((ppmkComposite==
NULL)||(pmkRight==
NULL))
267 IMoniker_IsSystemMoniker(pmkRight,&mkSys);
270 if(mkSys==MKSYS_ANTIMONIKER)
277 if(mkSys==MKSYS_GENERICCOMPOSITE){
279 res=IMoniker_Enum(pmkRight,
TRUE,&penumMk);
284 res=IEnumMoniker_Next(penumMk,1,&pmostLeftMk,
NULL);
286 IMoniker_IsSystemMoniker(pmostLeftMk,&mkSys2);
288 if(mkSys2==MKSYS_ANTIMONIKER){
290 IMoniker_Release(pmostLeftMk);
292 tempMkComposite=iface;
293 IMoniker_AddRef(iface);
295 while(IEnumMoniker_Next(penumMk,1,&pmostLeftMk,
NULL)==
S_OK){
299 IMoniker_Release(tempMkComposite);
300 IMoniker_Release(pmostLeftMk);
302 tempMkComposite=*ppmkComposite;
303 IMoniker_AddRef(tempMkComposite);
314 if (!fOnlyIfNotGeneric)
327 TRACE(
"(%p,%d,%p)\n",iface,fForward,ppenumMoniker);
329 if (ppenumMoniker ==
NULL)
332 *ppenumMoniker =
NULL;
346 TRACE(
"(%p,%p)\n",iface,pmkOtherMoniker);
348 if (pmkOtherMoniker==
NULL)
351 IMoniker_IsSystemMoniker(pmkOtherMoniker,&mkSys);
353 if (mkSys==MKSYS_POINTERMONIKER)
384 TRACE(
"(%p,%p,%p,%p)\n",iface,pbc,pmkToLeft,pmkNewlyRunning);
397 TRACE(
"(%p,%p,%p,%p)\n",iface,pbc,pmkToLeft,pAntiTime);
407 TRACE(
"(%p,%p)\n",iface,ppmk);
418 TRACE(
"(%p, %p)\n", pmkOther, ppmkPrefix);
424 IMoniker_AddRef(iface);
440 TRACE(
"(%p,%p,%p)\n",iface,pmOther,ppmkRelPath);
442 if (ppmkRelPath==
NULL)
457 TRACE(
"(%p,%p,%p,%p)\n",iface,pbc,pmkToLeft,ppszDisplayName);
459 if (ppszDisplayName==
NULL)
462 *ppszDisplayName =
NULL;
478 TRACE(
"(%p,%p,%p,%p,%p,%p)\n",iface,pbc,pmkToLeft,pszDisplayName,pchEaten,ppmkOut);
490 hr = IParseDisplayName_ParseDisplayName(pPDN, pbc, pszDisplayName, pchEaten, ppmkOut);
491 IParseDisplayName_Release(pPDN);
502 TRACE(
"(%p,%p)\n",iface,pwdMksys);
507 *pwdMksys = MKSYS_POINTERMONIKER;
553 IUnknown_AddRef(punk);
554 This->pObject = punk;
574 TRACE(
"(%p, %p)\n", punk, ppmk);
587 *ppmk = &
This->IMoniker_iface;
608 hr = IMoniker_QueryInterface(pMoniker,
riid,
ppv);
611 IMoniker_Release(pMoniker);
HRESULT WINAPI CreateAntiMoniker(IMoniker **ppmk)
#define InterlockedIncrement
#define InterlockedDecrement
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
HRESULT WINAPI CreateGenericComposite(IMoniker *pmkFirst, IMoniker *pmkRest, IMoniker **ppmkComposite)
#define HeapFree(x, y, z)
static void *static void *static LPDIRECTPLAY IUnknown * pUnk
interface IMoniker * LPMONIKER
const GUID IID_IParseDisplayName
static HRESULT WINAPI PointerMonikerImpl_GetDisplayName(IMoniker *iface, IBindCtx *pbc, IMoniker *pmkToLeft, LPOLESTR *ppszDisplayName)
static HRESULT WINAPI PointerMonikerImpl_RelativePathTo(IMoniker *iface, IMoniker *pmOther, IMoniker **ppmkRelPath)
static HRESULT WINAPI PointerMonikerImpl_IsRunning(IMoniker *iface, IBindCtx *pbc, IMoniker *pmkToLeft, IMoniker *pmkNewlyRunning)
static HRESULT WINAPI PointerMonikerImpl_Inverse(IMoniker *iface, IMoniker **ppmk)
static HRESULT WINAPI PointerMonikerImpl_ParseDisplayName(IMoniker *iface, IBindCtx *pbc, IMoniker *pmkToLeft, LPOLESTR pszDisplayName, ULONG *pchEaten, IMoniker **ppmkOut)
static HRESULT WINAPI PointerMonikerImpl_GetTimeOfLastChange(IMoniker *iface, IBindCtx *pbc, IMoniker *pmkToLeft, FILETIME *pAntiTime)
static HRESULT WINAPI PointerMonikerImpl_BindToObject(IMoniker *iface, IBindCtx *pbc, IMoniker *pmkToLeft, REFIID riid, VOID **ppvResult)
HRESULT WINAPI CreatePointerMoniker(LPUNKNOWN punk, LPMONIKER *ppmk)
static HRESULT WINAPI PointerMonikerImpl_GetClassID(IMoniker *iface, CLSID *pClassID)
static HRESULT WINAPI PointerMonikerImpl_ComposeWith(IMoniker *iface, IMoniker *pmkRight, BOOL fOnlyIfNotGeneric, IMoniker **ppmkComposite)
static HRESULT WINAPI PointerMonikerImpl_IsSystemMoniker(IMoniker *iface, DWORD *pwdMksys)
static HRESULT WINAPI PointerMonikerImpl_IsDirty(IMoniker *iface)
static HRESULT WINAPI PointerMonikerImpl_GetSizeMax(IMoniker *iface, ULARGE_INTEGER *pcbSize)
static HRESULT WINAPI PointerMonikerImpl_IsEqual(IMoniker *iface, IMoniker *pmkOtherMoniker)
static HRESULT WINAPI PointerMonikerImpl_Hash(IMoniker *iface, DWORD *pdwHash)
static HRESULT WINAPI PointerMonikerImpl_BindToStorage(IMoniker *iface, IBindCtx *pbc, IMoniker *pmkToLeft, REFIID riid, VOID **ppvResult)
static HRESULT WINAPI PointerMonikerImpl_Save(IMoniker *iface, IStream *pStm, BOOL fClearDirty)
static HRESULT WINAPI PointerMonikerImpl_Reduce(IMoniker *iface, IBindCtx *pbc, DWORD dwReduceHowFar, IMoniker **ppmkToLeft, IMoniker **ppmkReduced)
static void PointerMonikerImpl_Construct(PointerMonikerImpl *This, IUnknown *punk)
HRESULT WINAPI PointerMoniker_CreateInstance(IClassFactory *iface, IUnknown *pUnk, REFIID riid, void **ppv)
static HRESULT WINAPI PointerMonikerImpl_Load(IMoniker *iface, IStream *pStm)
static HRESULT WINAPI PointerMonikerImpl_Enum(IMoniker *iface, BOOL fForward, IEnumMoniker **ppenumMoniker)
static HRESULT WINAPI PointerMonikerImpl_QueryInterface(IMoniker *iface, REFIID riid, void **ppvObject)
static ULONG WINAPI PointerMonikerImpl_Release(IMoniker *iface)
static PointerMonikerImpl * impl_from_IMoniker(IMoniker *iface)
static HRESULT WINAPI PointerMonikerImpl_CommonPrefixWith(IMoniker *iface, IMoniker *pmkOther, IMoniker **ppmkPrefix)
static ULONG WINAPI PointerMonikerImpl_AddRef(IMoniker *iface)
static const IMonikerVtbl VT_PointerMonikerImpl
const GUID IID_IPersistStream
#define IsEqualIID(riid1, riid2)
struct _ULARGE_INTEGER::@4186 u
#define CONTAINING_RECORD(address, type, field)
_In_ void _In_ PCCERT_CONTEXT _In_opt_ LPFILETIME _In_ DWORD _In_ DWORD _Outptr_opt_ void ** ppvObject
#define MK_S_REDUCED_TO_SELF
#define CLASS_E_NOAGGREGATION