2 * Defines the COM interfaces and APIs related to ErrorInfo
5 #ifndef __WINE_WINE_OBJ_ERRORINFO_H
6 #define __WINE_WINE_OBJ_ERRORINFO_H
8 DEFINE_GUID(IID_IErrorInfo,0x1CF2B120,0x547D,0x101B,0x8E,0x65,0x08,0x00,0x2B,0x2B,0xD1,0x19);
9 typedef struct IErrorInfo IErrorInfo,*LPERRORINFO;
11 DEFINE_GUID(IID_ICreateErrorInfo,0x22F03340,0x547D,0x101B,0x8E,0x65,0x08,0x00,0x2B,0x2B,0xD1,0x19);
12 typedef struct ICreateErrorInfo ICreateErrorInfo,*LPCREATEERRORINFO;
14 DEFINE_GUID(IID_ISupportErrorInfo,0xDF0B3D60,0x547D,0x101B,0x8E,0x65,0x08,0x00,0x2B,0x2B,0xD1,0x19);
15 typedef struct ISupportErrorInfo ISupportErrorInfo,*LPSUPPORTERRORINFO;
17 /*****************************************************************************
20 #define ICOM_INTERFACE IErrorInfo
21 #define IErrorInfo_METHODS \
22 ICOM_METHOD1(HRESULT, GetGUID, GUID * , pGUID) \
23 ICOM_METHOD1(HRESULT, GetSource, BSTR* ,pBstrSource) \
24 ICOM_METHOD1(HRESULT, GetDescription, BSTR*, pBstrDescription) \
25 ICOM_METHOD1(HRESULT, GetHelpFile, BSTR*, pBstrHelpFile) \
26 ICOM_METHOD1(HRESULT, GetHelpContext, DWORD*, pdwHelpContext)
28 #define IErrorInfo_IMETHODS \
31 ICOM_DEFINE(IErrorInfo, IUnknown)
34 /*** IUnknown methods ***/
35 #define IErrorInfo_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
36 #define IErrorInfo_AddRef(p) ICOM_CALL (AddRef,p)
37 #define IErrorInfo_Release(p) ICOM_CALL (Release,p)
38 /*** IErrorInfo methods ***/
39 #define IErrorInfo_GetGUID(p,a) ICOM_CALL1 (GetGUID,p,a)
40 #define IErrorInfo_GetSource(p,a) ICOM_CALL1 (GetSource,p,a)
41 #define IErrorInfo_GetDescription(p,a) ICOM_CALL1 (GetDescription,p,a)
42 #define IErrorInfo_GetHelpFile(p,a) ICOM_CALL1 (GetHelpFile,p,a)
43 #define IErrorInfo_GetHelpContext(p,a) ICOM_CALL1 (GetHelpContext,p,a)
45 /*****************************************************************************
48 #define ICOM_INTERFACE ICreateErrorInfo
49 #define ICreateErrorInfo_METHODS \
50 ICOM_METHOD1(HRESULT, SetGUID, REFGUID, rguid) \
51 ICOM_METHOD1(HRESULT, SetSource, LPOLESTR, szSource) \
52 ICOM_METHOD1(HRESULT, SetDescription, LPOLESTR, szDescription) \
53 ICOM_METHOD1(HRESULT, SetHelpFile, LPOLESTR, szHelpFile) \
54 ICOM_METHOD1(HRESULT, SetHelpContext, DWORD, dwHelpContext)
56 #define ICreateErrorInfo_IMETHODS \
58 ICreateErrorInfo_METHODS
59 ICOM_DEFINE(ICreateErrorInfo, IUnknown)
62 /*** IUnknown methods ***/
63 #define ICreateErrorInfo_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
64 #define ICreateErrorInfo_AddRef(p) ICOM_CALL (AddRef,p)
65 #define ICreateErrorInfo_Release(p) ICOM_CALL (Release,p)
66 /*** ICreateErrorInfo methods ***/
67 #define ICreateErrorInfo_SetGUID(p,a) ICOM_CALL1 (SetGUID,p,a)
68 #define ICreateErrorInfo_SetSource(p,a) ICOM_CALL1 (SetSource,p,a)
69 #define ICreateErrorInfo_SetDescription(p,a) ICOM_CALL1 (SetDescription,p,a)
70 #define ICreateErrorInfo_SetHelpFile(p,a) ICOM_CALL1 (SetHelpFile,p,a)
71 #define ICreateErrorInfo_SetHelpContext(p,a) ICOM_CALL1 (SetHelpContext,p,a)
73 /*****************************************************************************
76 #define ICOM_INTERFACE ISupportErrorInfo
77 #define ISupportErrorInfo_METHODS \
78 ICOM_METHOD1(HRESULT, InterfaceSupportsErrorInfo, REFIID, riid )
80 #define ISupportErrorInfo_IMETHODS \
82 ISupportErrorInfo_METHODS
83 ICOM_DEFINE(ISupportErrorInfo, IUnknown)
86 /*** IUnknown methods ***/
87 #define ISupportErrorInfo_QueryInterface(p,a,b) ICOM_CALL2(QueryInterface,p,a,b)
88 #define ISupportErrorInfo_AddRef(p) ICOM_CALL (AddRef,p)
89 #define ISupportErrorInfo_Release(p) ICOM_CALL (Release,p)
90 /*** ISupportErrorInfo methods ***/
91 #define ISupportErrorInfo_InterfaceSupportsErrorInfo(p,a) ICOM_CALL1 (InterfaceSupportsErrorInfo,p,a)
94 #endif /* __WINE_WINE_OBJ_ERRORINFO_H */