100 *ppvoid = &
This->IErrorInfo_iface;
104 *ppvoid = &
This->ICreateErrorInfo_iface;
108 *ppvoid = &
This->ISupportErrorInfo_iface;
113 IUnknown_AddRef( (
IUnknown*)*ppvoid );
114 TRACE(
"-- Interface: (%p)->(%p)\n",ppvoid,*ppvoid);
117 TRACE(
"-- Interface: E_NOINTERFACE\n");
139 TRACE(
"-- destroying IErrorInfo(%p)\n",
This);
156 *pGUID =
This->m_Guid;
165 TRACE(
"(%p)->(pBstrSource=%p)\n",
This,pBstrSource);
166 if (pBstrSource ==
NULL)
174 BSTR *pBstrDescription)
178 TRACE(
"(%p)->(pBstrDescription=%p)\n",
This,pBstrDescription);
179 if (pBstrDescription ==
NULL)
192 TRACE(
"(%p)->(pBstrHelpFile=%p)\n",
This, pBstrHelpFile);
193 if (pBstrHelpFile ==
NULL)
202 DWORD *pdwHelpContext)
205 TRACE(
"(%p)->(pdwHelpContext=%p)\n",
This, pdwHelpContext);
206 if (pdwHelpContext ==
NULL)
208 *pdwHelpContext =
This->m_dwHelpContext;
232 return IErrorInfo_QueryInterface(&
This->IErrorInfo_iface,
riid, ppvoid);
239 return IErrorInfo_AddRef(&
This->IErrorInfo_iface);
246 return IErrorInfo_Release(&
This->IErrorInfo_iface);
256 This->m_Guid = *rguid;
302 This->m_dwHelpContext = dwHelpContext;
324 return IErrorInfo_QueryInterface(&
This->IErrorInfo_iface,
riid, ppvoid);
330 return IErrorInfo_AddRef(&
This->IErrorInfo_iface);
336 return IErrorInfo_Release(&
This->IErrorInfo_iface);
369 This->m_dwHelpContext = 0;
371 return &
This->IErrorInfo_iface;
390 TRACE(
"(%p)\n", pperrinfo);
394 res = IErrorInfo_QueryInterface(pei, &IID_ICreateErrorInfo, (
LPVOID*)pperrinfo);
395 IErrorInfo_Release(pei);
469 if (pei) IErrorInfo_Release(pei);
473 if (perrinfo) IErrorInfo_AddRef(perrinfo);
static void * heap_alloc(size_t len)
static BOOL heap_free(void *mem)
#define InterlockedIncrement
#define InterlockedDecrement
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static struct oletls * COM_CurrentInfo(void)
static const WCHAR szDescription[]
static HRESULT WINAPI ICreateErrorInfoImpl_SetDescription(ICreateErrorInfo *iface, LPOLESTR szDescription)
static ULONG WINAPI ISupportErrorInfoImpl_AddRef(ISupportErrorInfo *iface)
HRESULT WINAPI SetErrorInfo(ULONG dwReserved, IErrorInfo *perrinfo)
static HRESULT WINAPI IErrorInfoImpl_GetGUID(IErrorInfo *iface, GUID *pGUID)
static HRESULT WINAPI ICreateErrorInfoImpl_SetHelpFile(ICreateErrorInfo *iface, LPOLESTR szHelpFile)
static HRESULT WINAPI ICreateErrorInfoImpl_QueryInterface(ICreateErrorInfo *iface, REFIID riid, VOID **ppvoid)
static HRESULT WINAPI IErrorInfoImpl_QueryInterface(IErrorInfo *iface, REFIID riid, void **ppvoid)
static ErrorInfoImpl * impl_from_IErrorInfo(IErrorInfo *iface)
static const IErrorInfoVtbl ErrorInfoVtbl
static ULONG WINAPI IErrorInfoImpl_AddRef(IErrorInfo *iface)
HRESULT WINAPI GetErrorInfo(ULONG dwReserved, IErrorInfo **pperrinfo)
static HRESULT WINAPI ICreateErrorInfoImpl_SetGUID(ICreateErrorInfo *iface, REFGUID rguid)
HRESULT WINAPI CreateErrorInfo(ICreateErrorInfo **pperrinfo)
static ErrorInfoImpl * impl_from_ICreateErrorInfo(ICreateErrorInfo *iface)
static HRESULT WINAPI ICreateErrorInfoImpl_SetSource(ICreateErrorInfo *iface, LPOLESTR szSource)
static WCHAR * heap_strdupW(const WCHAR *str)
static ULONG WINAPI IErrorInfoImpl_Release(IErrorInfo *iface)
static HRESULT WINAPI IErrorInfoImpl_GetSource(IErrorInfo *iface, BSTR *pBstrSource)
static HRESULT WINAPI ISupportErrorInfoImpl_QueryInterface(ISupportErrorInfo *iface, REFIID riid, VOID **ppvoid)
static ErrorInfoImpl * impl_from_ISupportErrorInfo(ISupportErrorInfo *iface)
static ULONG WINAPI ISupportErrorInfoImpl_Release(ISupportErrorInfo *iface)
static HRESULT WINAPI IErrorInfoImpl_GetDescription(IErrorInfo *iface, BSTR *pBstrDescription)
static ULONG WINAPI ICreateErrorInfoImpl_AddRef(ICreateErrorInfo *iface)
static HRESULT WINAPI ICreateErrorInfoImpl_SetHelpContext(ICreateErrorInfo *iface, DWORD dwHelpContext)
static HRESULT WINAPI ISupportErrorInfoImpl_InterfaceSupportsErrorInfo(ISupportErrorInfo *iface, REFIID riid)
static HRESULT WINAPI IErrorInfoImpl_GetHelpContext(IErrorInfo *iface, DWORD *pdwHelpContext)
static HRESULT WINAPI IErrorInfoImpl_GetHelpFile(IErrorInfo *iface, BSTR *pBstrHelpFile)
static ULONG WINAPI ICreateErrorInfoImpl_Release(ICreateErrorInfo *iface)
static const ICreateErrorInfoVtbl CreateErrorInfoVtbl
static const ISupportErrorInfoVtbl SupportErrorInfoVtbl
static IErrorInfo * IErrorInfoImpl_Constructor(void)
#define memcpy(s1, s2, n)
_In_ HANDLE _In_ DWORD _In_ DWORD _Inout_opt_ LPOVERLAPPED _In_opt_ LPTRANSMIT_FILE_BUFFERS _In_ DWORD dwReserved
BSTR WINAPI SysAllocString(LPCOLESTR str)
#define IsEqualIID(riid1, riid2)
ISupportErrorInfo ISupportErrorInfo_iface
ICreateErrorInfo ICreateErrorInfo_iface
IErrorInfo IErrorInfo_iface
#define CONTAINING_RECORD(address, type, field)