1 | // Licensed to the .NET Foundation under one or more agreements. |
---|---|
2 | // The .NET Foundation licenses this file to you under the MIT license. |
3 | // See the LICENSE file in the project root for more information. |
4 | // |
5 | |
6 | // |
7 | // =========================================================================== |
8 | // File: oaidl.h |
9 | // |
10 | // =========================================================================== |
11 | |
12 | #ifndef __OAIDL_H__ |
13 | #define __OAIDL_H__ |
14 | |
15 | #include "rpc.h" |
16 | #include "rpcndr.h" |
17 | |
18 | #include "unknwn.h" |
19 | |
20 | typedef struct tagEXCEPINFO { |
21 | WORD wCode; |
22 | WORD wReserved; |
23 | BSTR bstrSource; |
24 | BSTR bstrDescription; |
25 | BSTR bstrHelpFile; |
26 | DWORD dwHelpContext; |
27 | PVOID pvReserved; |
28 | HRESULT (__stdcall *pfnDeferredFillIn)(struct tagEXCEPINFO *); |
29 | SCODE scode; |
30 | } EXCEPINFO, * LPEXCEPINFO; |
31 | |
32 | typedef interface IErrorInfo IErrorInfo; |
33 | typedef /* [unique] */ IErrorInfo *LPERRORINFO; |
34 | |
35 | EXTERN_C const IID IID_IErrorInfo; |
36 | |
37 | interface |
38 | IErrorInfo : public IUnknown |
39 | { |
40 | public: |
41 | virtual HRESULT STDMETHODCALLTYPE GetGUID( |
42 | /* [out] */ GUID *pGUID) = 0; |
43 | |
44 | virtual HRESULT STDMETHODCALLTYPE GetSource( |
45 | /* [out] */ BSTR *pBstrSource) = 0; |
46 | |
47 | virtual HRESULT STDMETHODCALLTYPE GetDescription( |
48 | /* [out] */ BSTR *pBstrDescription) = 0; |
49 | |
50 | virtual HRESULT STDMETHODCALLTYPE GetHelpFile( |
51 | /* [out] */ BSTR *pBstrHelpFile) = 0; |
52 | |
53 | virtual HRESULT STDMETHODCALLTYPE GetHelpContext( |
54 | /* [out] */ DWORD *pdwHelpContext) = 0; |
55 | |
56 | }; |
57 | |
58 | typedef interface ICreateErrorInfo ICreateErrorInfo; |
59 | |
60 | EXTERN_C const IID IID_ICreateErrorInfo; |
61 | |
62 | typedef /* [unique] */ ICreateErrorInfo *LPCREATEERRORINFO; |
63 | |
64 | interface |
65 | ICreateErrorInfo : public IUnknown |
66 | { |
67 | public: |
68 | virtual HRESULT STDMETHODCALLTYPE SetGUID( |
69 | /* [in] */ REFGUID rguid) = 0; |
70 | |
71 | virtual HRESULT STDMETHODCALLTYPE SetSource( |
72 | /* [in] */ LPOLESTR szSource) = 0; |
73 | |
74 | virtual HRESULT STDMETHODCALLTYPE SetDescription( |
75 | /* [in] */ LPOLESTR szDescription) = 0; |
76 | |
77 | virtual HRESULT STDMETHODCALLTYPE SetHelpFile( |
78 | /* [in] */ LPOLESTR szHelpFile) = 0; |
79 | |
80 | virtual HRESULT STDMETHODCALLTYPE SetHelpContext( |
81 | /* [in] */ DWORD dwHelpContext) = 0; |
82 | |
83 | }; |
84 | |
85 | STDAPI |
86 | SetErrorInfo(ULONG dwReserved, IErrorInfo FAR* perrinfo); |
87 | |
88 | STDAPI |
89 | GetErrorInfo(ULONG dwReserved, IErrorInfo FAR* FAR* pperrinfo); |
90 | |
91 | STDAPI |
92 | CreateErrorInfo(ICreateErrorInfo FAR* FAR* pperrinfo); |
93 | |
94 | |
95 | typedef interface ISupportErrorInfo ISupportErrorInfo; |
96 | |
97 | typedef /* [unique] */ ISupportErrorInfo *LPSUPPORTERRORINFO; |
98 | |
99 | EXTERN_C const IID IID_ISupportErrorInfo; |
100 | |
101 | |
102 | interface |
103 | ISupportErrorInfo : public IUnknown |
104 | { |
105 | public: |
106 | virtual HRESULT STDMETHODCALLTYPE InterfaceSupportsErrorInfo( |
107 | /* [in] */ REFIID riid) = 0; |
108 | |
109 | }; |
110 | |
111 | #endif //__OAIDL_H__ |
112 |