| /*** Autogenerated by WIDL 0.1 from oaidl.idl - Do not edit ***/ |
| #include "rpc.h" |
| #include "rpcndr.h" |
| |
| #ifndef __WIDL_OAIDL_H |
| #define __WIDL_OAIDL_H |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| #include "objidl.h" |
| typedef struct IDispatch IDispatch; |
| typedef struct ITypeInfo ITypeInfo; |
| typedef struct ITypeLib ITypeLib; |
| typedef struct IRecordInfo IRecordInfo; |
| typedef CY CURRENCY; |
| |
| typedef struct tagSAFEARRAYBOUND { |
| ULONG cElements; |
| LONG lLbound; |
| } SAFEARRAYBOUND, *LPSAFEARRAYBOUND; |
| |
| typedef struct _wireVARIANT *wireVARIANT; |
| |
| typedef struct _wireBRECORD *wireBRECORD; |
| |
| typedef struct _wireSAFEARR_BSTR { |
| ULONG Size; |
| wireBSTR *aBstr; |
| } SAFEARR_BSTR; |
| |
| typedef struct _wireSAFEARR_UNKNOWN { |
| ULONG Size; |
| IUnknown **apUnknown; |
| } SAFEARR_UNKNOWN; |
| |
| typedef struct _wireSAFEARR_DISPATCH { |
| ULONG Size; |
| IDispatch **apDispatch; |
| } SAFEARR_DISPATCH; |
| |
| typedef struct _wireSAFEARR_VARIANT { |
| ULONG Size; |
| wireVARIANT *aVariant; |
| } SAFEARR_VARIANT; |
| |
| typedef struct _wireSAFEARR_BRECORD { |
| ULONG Size; |
| wireBRECORD *aRecord; |
| } SAFEARR_BRECORD; |
| |
| typedef struct _wireSAFEARR_HAVEIID { |
| ULONG Size; |
| IUnknown **apUnknown; |
| IID iid; |
| } SAFEARR_HAVEIID; |
| |
| typedef enum tagSF_TYPE { |
| SF_ERROR = VT_ERROR, |
| SF_I1 = VT_I1, |
| SF_I2 = VT_I2, |
| SF_I4 = VT_I4, |
| SF_I8 = VT_I8, |
| SF_BSTR = VT_BSTR, |
| SF_UNKNOWN = VT_UNKNOWN, |
| SF_DISPATCH = VT_DISPATCH, |
| SF_VARIANT = VT_VARIANT, |
| SF_RECORD = VT_RECORD, |
| SF_HAVEIID = VT_UNKNOWN | VT_RESERVED |
| } SF_TYPE; |
| |
| typedef struct _wireSAFEARRAY_UNION { |
| ULONG sfType; |
| union { |
| SAFEARR_BSTR BstrStr; |
| SAFEARR_UNKNOWN UnknownStr; |
| SAFEARR_DISPATCH DispatchStr; |
| SAFEARR_VARIANT VariantStr; |
| SAFEARR_BRECORD RecordStr; |
| SAFEARR_HAVEIID HaveIidStr; |
| BYTE_SIZEDARR ByteStr; |
| WORD_SIZEDARR WordStr; |
| DWORD_SIZEDARR LongStr; |
| HYPER_SIZEDARR HyperStr; |
| } u; |
| } SAFEARRAYUNION; |
| |
| typedef struct _wireSAFEARRAY { |
| USHORT cDims; |
| USHORT fFeatures; |
| ULONG cbElements; |
| ULONG cLocks; |
| SAFEARRAYUNION uArrayStructs; |
| SAFEARRAYBOUND rgsabound[1]; |
| } *wireSAFEARRAY; |
| |
| typedef wireSAFEARRAY *wirePSAFEARRAY; |
| |
| typedef struct tagSAFEARRAY { |
| USHORT cDims; |
| USHORT fFeatures; |
| ULONG cbElements; |
| ULONG cLocks; |
| PVOID pvData; |
| SAFEARRAYBOUND rgsabound[1]; |
| } SAFEARRAY; |
| |
| typedef SAFEARRAY *LPSAFEARRAY; |
| unsigned long __RPC_USER LPSAFEARRAY_UserSize (unsigned long *, unsigned long, LPSAFEARRAY *); |
| unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal (unsigned long *, unsigned char *, LPSAFEARRAY *); |
| unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal(unsigned long *, unsigned char *, LPSAFEARRAY *); |
| void __RPC_USER LPSAFEARRAY_UserFree (unsigned long *, LPSAFEARRAY *); |
| |
| #define FADF_AUTO (0x1) |
| |
| #define FADF_STATIC (0x2) |
| |
| #define FADF_EMBEDDED (0x4) |
| |
| #define FADF_FIXEDSIZE (0x10) |
| |
| #define FADF_RECORD (0x20) |
| |
| #define FADF_HAVEIID (0x40) |
| |
| #define FADF_HAVEVARTYPE (0x80) |
| |
| #define FADF_BSTR (0x100) |
| |
| #define FADF_UNKNOWN (0x200) |
| |
| #define FADF_DISPATCH (0x400) |
| |
| #define FADF_VARIANT (0x800) |
| |
| #define FADF_RESERVED (0xf008) |
| |
| #define FADF_CREATEVECTOR (0x2000) |
| |
| #if (__STDC__ && !defined(_FORCENAMELESSUNION)) || defined(NONAMELESSUNION) |
| #define __VARIANT_NAME_1 n1 |
| #define __VARIANT_NAME_2 n2 |
| #define __VARIANT_NAME_3 n3 |
| #define __VARIANT_NAME_4 brecVal |
| #else |
| #define __tagVARIANT |
| #define __VARIANT_NAME_1 |
| #define __VARIANT_NAME_2 |
| #define __VARIANT_NAME_3 |
| #define __tagBRECORD |
| #define __VARIANT_NAME_4 |
| #endif |
| typedef struct tagVARIANT VARIANT; |
| unsigned long __RPC_USER VARIANT_UserSize (unsigned long *, unsigned long, VARIANT *); |
| unsigned char * __RPC_USER VARIANT_UserMarshal (unsigned long *, unsigned char *, VARIANT *); |
| unsigned char * __RPC_USER VARIANT_UserUnmarshal(unsigned long *, unsigned char *, VARIANT *); |
| void __RPC_USER VARIANT_UserFree (unsigned long *, VARIANT *); |
| |
| struct tagVARIANT { |
| union { |
| struct __tagVARIANT { |
| VARTYPE vt; |
| WORD wReserved1; |
| WORD wReserved2; |
| WORD wReserved3; |
| union { |
| CHAR cVal; |
| USHORT uiVal; |
| ULONG ulVal; |
| INT intVal; |
| UINT uintVal; |
| BYTE bVal; |
| SHORT iVal; |
| LONG lVal; |
| FLOAT fltVal; |
| DOUBLE dblVal; |
| VARIANT_BOOL boolVal; |
| SCODE scode; |
| DATE date; |
| BSTR bstrVal; |
| CY cyVal; |
| IUnknown *punkVal; |
| IDispatch *pdispVal; |
| SAFEARRAY *parray; |
| CHAR *pcVal; |
| USHORT *puiVal; |
| ULONG *pulVal; |
| INT *pintVal; |
| UINT *puintVal; |
| BYTE *pbVal; |
| SHORT *piVal; |
| LONG *plVal; |
| FLOAT *pfltVal; |
| DOUBLE *pdblVal; |
| VARIANT_BOOL *pboolVal; |
| SCODE *pscode; |
| DATE *pdate; |
| BSTR *pbstrVal; |
| VARIANT *pvarVal; |
| PVOID byref; |
| CY *pcyVal; |
| DECIMAL *pdecVal; |
| IUnknown **ppunkVal; |
| IDispatch **ppdispVal; |
| SAFEARRAY **pparray; |
| struct __tagBRECORD { |
| PVOID pvRecord; |
| IRecordInfo *pRecInfo; |
| } __VARIANT_NAME_4; |
| } __VARIANT_NAME_3; |
| } __VARIANT_NAME_2; |
| DECIMAL decVal; |
| } __VARIANT_NAME_1; |
| }; |
| |
| typedef VARIANT *LPVARIANT; |
| |
| typedef VARIANT VARIANTARG; |
| |
| typedef VARIANTARG *LPVARIANTARG; |
| |
| struct _wireBRECORD { |
| ULONG fFlags; |
| ULONG clSize; |
| IRecordInfo *pRecInfo; |
| byte *pRecord; |
| }; |
| |
| struct _wireVARIANT { |
| DWORD clSize; |
| DWORD rpcReserved; |
| USHORT vt; |
| USHORT wReserved1; |
| USHORT wReserved2; |
| USHORT wReserved3; |
| union { |
| CHAR cVal; |
| USHORT uiVal; |
| ULONG ulVal; |
| INT intVal; |
| UINT uintVal; |
| BYTE bVal; |
| SHORT iVal; |
| LONG lVal; |
| FLOAT fltVal; |
| DOUBLE dblVal; |
| VARIANT_BOOL boolVal; |
| SCODE scode; |
| DATE date; |
| wireBSTR bstrVal; |
| CY cyVal; |
| DECIMAL decVal; |
| IUnknown *punkVal; |
| IDispatch *pdispVal; |
| wireSAFEARRAY parray; |
| CHAR *pcVal; |
| USHORT *puiVal; |
| ULONG *pulVal; |
| INT *pintVal; |
| UINT *puintVal; |
| BYTE *pbVal; |
| SHORT *piVal; |
| LONG *plVal; |
| FLOAT *pfltVal; |
| DOUBLE *pdblVal; |
| VARIANT_BOOL *pboolVal; |
| SCODE *pscode; |
| DATE *pdate; |
| wireBSTR *pbstrVal; |
| wireVARIANT *pvarVal; |
| CY *pcyVal; |
| DECIMAL *pdecVal; |
| IUnknown **ppunkVal; |
| IDispatch **ppdispVal; |
| wireSAFEARRAY *pparray; |
| wireBRECORD brecVal; |
| } DUMMYUNIONNAME; |
| }; |
| |
| typedef LONG DISPID; |
| |
| typedef DWORD HREFTYPE; |
| |
| typedef DISPID MEMBERID; |
| |
| typedef enum tagTYPEKIND { |
| TKIND_ENUM = 0, |
| TKIND_RECORD, |
| TKIND_MODULE, |
| TKIND_INTERFACE, |
| TKIND_DISPATCH, |
| TKIND_COCLASS, |
| TKIND_ALIAS, |
| TKIND_UNION, |
| TKIND_MAX |
| } TYPEKIND; |
| |
| typedef struct tagTYPEDESC { |
| union { |
| struct tagTYPEDESC *lptdesc; |
| struct tagARRAYDESC *lpadesc; |
| HREFTYPE hreftype; |
| } DUMMYUNIONNAME; |
| VARTYPE vt; |
| } TYPEDESC; |
| |
| typedef struct tagARRAYDESC { |
| TYPEDESC tdescElem; |
| USHORT cDims; |
| SAFEARRAYBOUND rgbounds[1]; |
| } ARRAYDESC; |
| |
| typedef struct tagPARAMDESCEX { |
| ULONG cBytes; |
| VARIANTARG varDefaultValue; |
| } PARAMDESCEX, *LPPARAMDESCEX; |
| |
| typedef struct tagPARAMDESC { |
| LPPARAMDESCEX pparamdescex; |
| USHORT wParamFlags; |
| } PARAMDESC, *LPPARAMDESC; |
| |
| #define PARAMFLAG_NONE (0x0) |
| |
| #define PARAMFLAG_FIN (0x1) |
| |
| #define PARAMFLAG_FOUT (0x2) |
| |
| #define PARAMFLAG_FLCID (0x4) |
| |
| #define PARAMFLAG_FRETVAL (0x8) |
| |
| #define PARAMFLAG_FOPT (0x10) |
| |
| #define PARAMFLAG_FHASDEFAULT (0x20) |
| |
| #define PARAMFLAG_FHASCUSTDATA (0x40) |
| |
| typedef struct tagIDLDESC { |
| ULONG dwReserved; |
| USHORT wIDLFlags; |
| } IDLDESC, *LPIDLDESC; |
| |
| #define IDLFLAG_NONE (PARAMFLAG_NONE) |
| |
| #define IDLFLAG_FIN (PARAMFLAG_FIN) |
| |
| #define IDLFLAG_FOUT (PARAMFLAG_FOUT) |
| |
| #define IDLFLAG_FLCID (PARAMFLAG_FLCID) |
| |
| #define IDLFLAG_FRETVAL (PARAMFLAG_FRETVAL) |
| |
| #if 0 |
| typedef struct tagELEMDESC { |
| TYPEDESC tdesc; |
| PARAMDESC paramdesc; |
| } ELEMDESC; |
| |
| #else |
| typedef struct tagELEMDESC { |
| TYPEDESC tdesc; |
| union { |
| IDLDESC idldesc; |
| PARAMDESC paramdesc; |
| } DUMMYUNIONNAME; |
| } ELEMDESC, *LPELEMDESC; |
| #endif |
| typedef struct tagTYPEATTR { |
| GUID guid; |
| LCID lcid; |
| DWORD dwReserved; |
| MEMBERID memidConstructor; |
| MEMBERID memidDestructor; |
| LPOLESTR lpstrSchema; |
| ULONG cbSizeInstance; |
| TYPEKIND typekind; |
| WORD cFuncs; |
| WORD cVars; |
| WORD cImplTypes; |
| WORD cbSizeVft; |
| WORD cbAlignment; |
| WORD wTypeFlags; |
| WORD wMajorVerNum; |
| WORD wMinorVerNum; |
| TYPEDESC tdescAlias; |
| IDLDESC idldescType; |
| } TYPEATTR, *LPTYPEATTR; |
| |
| typedef struct tagDISPPARAMS { |
| VARIANTARG *rgvarg; |
| DISPID *rgdispidNamedArgs; |
| UINT cArgs; |
| UINT cNamedArgs; |
| } DISPPARAMS; |
| |
| #if 0 |
| typedef struct tagEXCEPINFO { |
| WORD wCode; |
| WORD wReserved; |
| BSTR bstrSource; |
| BSTR bstrDescription; |
| BSTR bstrHelpFile; |
| DWORD dwHelpContext; |
| ULONG pvReserved; |
| ULONG pfnDeferredFillIn; |
| SCODE scode; |
| } EXCEPINFO; |
| |
| #else |
| typedef struct tagEXCEPINFO { |
| WORD wCode; |
| WORD wReserved; |
| BSTR bstrSource; |
| BSTR bstrDescription; |
| BSTR bstrHelpFile; |
| DWORD dwHelpContext; |
| PVOID pvReserved; |
| HRESULT (__stdcall *pfnDeferredFillIn)(struct tagEXCEPINFO *); |
| SCODE scode; |
| } EXCEPINFO, *LPEXCEPINFO; |
| #endif |
| typedef enum tagCALLCONV { |
| CC_FASTCALL = 0, |
| CC_CDECL = 1, |
| CC_MSCPASCAL, |
| CC_PASCAL = CC_MSCPASCAL, |
| CC_MACPASCAL, |
| CC_STDCALL, |
| CC_FPFASTCALL, |
| CC_SYSCALL, |
| CC_MPWCDECL, |
| CC_MPWPASCAL, |
| CC_MAX |
| } CALLCONV; |
| |
| typedef enum tagFUNCKIND { |
| FUNC_VIRTUAL, |
| FUNC_PUREVIRTUAL, |
| FUNC_NONVIRTUAL, |
| FUNC_STATIC, |
| FUNC_DISPATCH |
| } FUNCKIND; |
| |
| typedef enum tagINVOKEKIND { |
| INVOKE_FUNC = 1, |
| INVOKE_PROPERTYGET = 2, |
| INVOKE_PROPERTYPUT = 4, |
| INVOKE_PROPERTYPUTREF = 8 |
| } INVOKEKIND; |
| |
| typedef struct tagFUNCDESC { |
| MEMBERID memid; |
| SCODE *lprgscode; |
| ELEMDESC *lprgelemdescParam; |
| FUNCKIND funckind; |
| INVOKEKIND invkind; |
| CALLCONV callconv; |
| SHORT cParams; |
| SHORT cParamsOpt; |
| SHORT oVft; |
| SHORT cScodes; |
| ELEMDESC elemdescFunc; |
| WORD wFuncFlags; |
| } FUNCDESC, *LPFUNCDESC; |
| |
| typedef enum tagVARKIND { |
| VAR_PERINSTANCE, |
| VAR_STATIC, |
| VAR_CONST, |
| VAR_DISPATCH |
| } VARKIND; |
| |
| #define IMPLTYPEFLAG_FDEFAULT (0x1) |
| |
| #define IMPLTYPEFLAG_FSOURCE (0x2) |
| |
| #define IMPLTYPEFLAG_FRESTRICTED (0x4) |
| |
| #define IMPLTYPEFLAG_FDEFAULTVTABLE (0x8) |
| |
| typedef struct tagVARDESC { |
| MEMBERID memid; |
| LPOLESTR lpstrSchema; |
| union { |
| ULONG oInst; |
| VARIANT *lpvarValue; |
| } DUMMYUNIONNAME; |
| ELEMDESC elemdescVar; |
| WORD wVarFlags; |
| VARKIND varkind; |
| } VARDESC, *LPVARDESC; |
| |
| typedef enum tagTYPEFLAGS { |
| TYPEFLAG_FAPPOBJECT = 0x1, |
| TYPEFLAG_FCANCREATE = 0x2, |
| TYPEFLAG_FLICENSED = 0x4, |
| TYPEFLAG_FPREDECLID = 0x8, |
| TYPEFLAG_FHIDDEN = 0x10, |
| TYPEFLAG_FCONTROL = 0x20, |
| TYPEFLAG_FDUAL = 0x40, |
| TYPEFLAG_FNONEXTENSIBLE = 0x80, |
| TYPEFLAG_FOLEAUTOMATION = 0x100, |
| TYPEFLAG_FRESTRICTED = 0x200, |
| TYPEFLAG_FAGGREGATABLE = 0x400, |
| TYPEFLAG_FREPLACEABLE = 0x800, |
| TYPEFLAG_FDISPATCHABLE = 0x1000, |
| TYPEFLAG_FREVERSEBIND = 0x2000, |
| TYPEFLAG_FPROXY = 0x4000 |
| } TYPEFLAGS; |
| |
| typedef enum tagFUNCFLAGS { |
| FUNCFLAG_FRESTRICTED = 0x1, |
| FUNCFLAG_FSOURCE = 0x2, |
| FUNCFLAG_FBINDABLE = 0x4, |
| FUNCFLAG_FREQUESTEDIT = 0x8, |
| FUNCFLAG_FDISPLAYBIND = 0x10, |
| FUNCFLAG_FDEFAULTBIND = 0x20, |
| FUNCFLAG_FHIDDEN = 0x40, |
| FUNCFLAG_FUSESGETLASTERROR = 0x80, |
| FUNCFLAG_FDEFAULTCOLLELEM = 0x100, |
| FUNCFLAG_FUIDEFAULT = 0x200, |
| FUNCFLAG_FNONBROWSABLE = 0x400, |
| FUNCFLAG_FREPLACEABLE = 0x800, |
| FUNCFLAG_FIMMEDIATEBIND = 0x1000 |
| } FUNCFLAGS; |
| |
| typedef enum tagVARFLAGS { |
| VARFLAG_FREADONLY = 0x1, |
| VARFLAG_FSOURCE = 0x2, |
| VARFLAG_FBINDABLE = 0x4, |
| VARFLAG_FREQUESTEDIT = 0x8, |
| VARFLAG_FDISPLAYBIND = 0x10, |
| VARFLAG_FDEFAULTBIND = 0x20, |
| VARFLAG_FHIDDEN = 0x40, |
| VARFLAG_FRESTRICTED = 0x80, |
| VARFLAG_FDEFAULTCOLLELEM = 0x100, |
| VARFLAG_FUIDEFAULT = 0x200, |
| VARFLAG_FNONBROWSABLE = 0x400, |
| VARFLAG_FREPLACEABLE = 0x800, |
| VARFLAG_FIMMEDIATEBIND = 0x1000 |
| } VARFLAGS; |
| |
| typedef struct tagCLEANLOCALSTORAGE { |
| IUnknown *pInterface; |
| PVOID pStorage; |
| DWORD flags; |
| } CLEANLOCALSTORAGE; |
| unsigned long __RPC_USER CLEANLOCALSTORAGE_UserSize (unsigned long *, unsigned long, CLEANLOCALSTORAGE *); |
| unsigned char * __RPC_USER CLEANLOCALSTORAGE_UserMarshal (unsigned long *, unsigned char *, CLEANLOCALSTORAGE *); |
| unsigned char * __RPC_USER CLEANLOCALSTORAGE_UserUnmarshal(unsigned long *, unsigned char *, CLEANLOCALSTORAGE *); |
| void __RPC_USER CLEANLOCALSTORAGE_UserFree (unsigned long *, CLEANLOCALSTORAGE *); |
| |
| typedef struct tagCUSTDATAITEM { |
| GUID guid; |
| VARIANTARG varValue; |
| } CUSTDATAITEM, *LPCUSTDATAITEM; |
| |
| typedef struct tagCUSTDATA { |
| DWORD cCustData; |
| LPCUSTDATAITEM prgCustData; |
| } CUSTDATA, *LPCUSTDATA; |
| |
| typedef IDispatch *LPDISPATCH; |
| |
| #define DISPID_UNKNOWN (-1) |
| |
| #define DISPID_VALUE (0) |
| |
| #define DISPID_PROPERTYPUT (-3) |
| |
| #define DISPID_NEWENUM (-4) |
| |
| #define DISPID_EVALUATE (-5) |
| |
| #define DISPID_CONSTRUCTOR (-6) |
| |
| #define DISPID_DESTRUCTOR (-7) |
| |
| #define DISPID_COLLECT (-8) |
| |
| /***************************************************************************** |
| * IDispatch interface |
| */ |
| DEFINE_GUID(IID_IDispatch, 0x00020400, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| struct IDispatch: IUnknown { |
| |
| virtual HRESULT CALLBACK GetTypeInfoCount( |
| UINT* pctinfo) = 0; |
| |
| virtual HRESULT CALLBACK GetTypeInfo( |
| UINT iTInfo, |
| LCID lcid, |
| ITypeInfo** ppTInfo) = 0; |
| |
| virtual HRESULT CALLBACK GetIDsOfNames( |
| REFIID riid, |
| LPOLESTR* rgszNames, |
| UINT cNames, |
| LCID lcid, |
| DISPID* rgDispId) = 0; |
| |
| virtual HRESULT CALLBACK Invoke( |
| DISPID dispIdMember, |
| REFIID riid, |
| LCID lcid, |
| WORD wFlags, |
| DISPPARAMS* pDispParams, |
| VARIANT* pVarResult, |
| EXCEPINFO* pExcepInfo, |
| UINT* puArgErr) = 0; |
| |
| } ICOM_COM_INTERFACE_ATTRIBUTE; |
| #else |
| typedef struct IDispatchVtbl IDispatchVtbl; |
| struct IDispatch { |
| const IDispatchVtbl* lpVtbl; |
| }; |
| struct IDispatchVtbl { |
| ICOM_MSVTABLE_COMPAT_FIELDS |
| |
| /*** IUnknown methods ***/ |
| HRESULT (CALLBACK *QueryInterface)( |
| IDispatch* This, |
| REFIID riid, |
| void** ppvObject); |
| |
| ULONG (CALLBACK *AddRef)( |
| IDispatch* This); |
| |
| ULONG (CALLBACK *Release)( |
| IDispatch* This); |
| |
| /*** IDispatch methods ***/ |
| HRESULT (CALLBACK *GetTypeInfoCount)( |
| IDispatch* This, |
| UINT* pctinfo); |
| |
| HRESULT (CALLBACK *GetTypeInfo)( |
| IDispatch* This, |
| UINT iTInfo, |
| LCID lcid, |
| ITypeInfo** ppTInfo); |
| |
| HRESULT (CALLBACK *GetIDsOfNames)( |
| IDispatch* This, |
| REFIID riid, |
| LPOLESTR* rgszNames, |
| UINT cNames, |
| LCID lcid, |
| DISPID* rgDispId); |
| |
| HRESULT (CALLBACK *Invoke)( |
| IDispatch* This, |
| DISPID dispIdMember, |
| REFIID riid, |
| LCID lcid, |
| WORD wFlags, |
| DISPPARAMS* pDispParams, |
| VARIANT* pVarResult, |
| EXCEPINFO* pExcepInfo, |
| UINT* puArgErr); |
| |
| }; |
| |
| #define IDispatch_IMETHODS \ |
| IUnknown_IMETHODS \ |
| ICOM_METHOD1 (HRESULT,GetTypeInfoCount,UINT*,pctinfo) \ |
| ICOM_METHOD3 (HRESULT,GetTypeInfo,UINT,iTInfo,LCID,lcid,ITypeInfo**,ppTInfo) \ |
| ICOM_METHOD5 (HRESULT,GetIDsOfNames,REFIID,riid,LPOLESTR*,rgszNames,UINT,cNames,LCID,lcid,DISPID*,rgDispId) \ |
| ICOM_METHOD8 (HRESULT,Invoke,DISPID,dispIdMember,REFIID,riid,LCID,lcid,WORD,wFlags,DISPPARAMS*,pDispParams,VARIANT*,pVarResult,EXCEPINFO*,pExcepInfo,UINT*,puArgErr) |
| |
| /*** IUnknown methods ***/ |
| #define IDispatch_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) |
| #define IDispatch_AddRef(p) (p)->lpVtbl->AddRef(p) |
| #define IDispatch_Release(p) (p)->lpVtbl->Release(p) |
| /*** IDispatch methods ***/ |
| #define IDispatch_GetTypeInfoCount(p,a) (p)->lpVtbl->GetTypeInfoCount(p,a) |
| #define IDispatch_GetTypeInfo(p,a,b,c) (p)->lpVtbl->GetTypeInfo(p,a,b,c) |
| #define IDispatch_GetIDsOfNames(p,a,b,c,d,e) (p)->lpVtbl->GetIDsOfNames(p,a,b,c,d,e) |
| #define IDispatch_Invoke(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->Invoke(p,a,b,c,d,e,f,g,h) |
| |
| #endif |
| |
| HRESULT CALLBACK IDispatch_GetTypeInfoCount_Proxy( |
| IDispatch* This, |
| UINT* pctinfo); |
| void __RPC_STUB IDispatch_GetTypeInfoCount_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IDispatch_GetTypeInfo_Proxy( |
| IDispatch* This, |
| UINT iTInfo, |
| LCID lcid, |
| ITypeInfo** ppTInfo); |
| void __RPC_STUB IDispatch_GetTypeInfo_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IDispatch_GetIDsOfNames_Proxy( |
| IDispatch* This, |
| REFIID riid, |
| LPOLESTR* rgszNames, |
| UINT cNames, |
| LCID lcid, |
| DISPID* rgDispId); |
| void __RPC_STUB IDispatch_GetIDsOfNames_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IDispatch_RemoteInvoke_Proxy( |
| IDispatch* This, |
| DISPID dispIdMember, |
| REFIID riid, |
| LCID lcid, |
| DWORD dwFlags, |
| DISPPARAMS* pDispParams, |
| VARIANT* pVarResult, |
| EXCEPINFO* pExcepInfo, |
| UINT* pArgErr, |
| UINT cVarRef, |
| UINT* rgVarRefIdx, |
| VARIANTARG* rgVarRef); |
| void __RPC_STUB IDispatch_RemoteInvoke_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IDispatch_Invoke_Proxy( |
| IDispatch* This, |
| DISPID dispIdMember, |
| REFIID riid, |
| LCID lcid, |
| WORD wFlags, |
| DISPPARAMS* pDispParams, |
| VARIANT* pVarResult, |
| EXCEPINFO* pExcepInfo, |
| UINT* puArgErr); |
| HRESULT __RPC_STUB IDispatch_Invoke_Stub( |
| IDispatch* This, |
| DISPID dispIdMember, |
| REFIID riid, |
| LCID lcid, |
| DWORD dwFlags, |
| DISPPARAMS* pDispParams, |
| VARIANT* pVarResult, |
| EXCEPINFO* pExcepInfo, |
| UINT* pArgErr, |
| UINT cVarRef, |
| UINT* rgVarRefIdx, |
| VARIANTARG* rgVarRef); |
| |
| typedef struct IEnumVARIANT IEnumVARIANT; |
| typedef IEnumVARIANT *LPENUMVARIANT; |
| |
| /***************************************************************************** |
| * IEnumVARIANT interface |
| */ |
| DEFINE_GUID(IID_IEnumVARIANT, 0x00020404, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| struct IEnumVARIANT: IUnknown { |
| |
| virtual HRESULT CALLBACK Next( |
| ULONG celt, |
| VARIANT* rgVar, |
| ULONG* pCeltFetched) = 0; |
| |
| virtual HRESULT CALLBACK Skip( |
| ULONG celt) = 0; |
| |
| virtual HRESULT CALLBACK Reset( |
| ) = 0; |
| |
| virtual HRESULT CALLBACK Clone( |
| IEnumVARIANT** ppEnum) = 0; |
| |
| } ICOM_COM_INTERFACE_ATTRIBUTE; |
| #else |
| typedef struct IEnumVARIANTVtbl IEnumVARIANTVtbl; |
| struct IEnumVARIANT { |
| const IEnumVARIANTVtbl* lpVtbl; |
| }; |
| struct IEnumVARIANTVtbl { |
| ICOM_MSVTABLE_COMPAT_FIELDS |
| |
| /*** IUnknown methods ***/ |
| HRESULT (CALLBACK *QueryInterface)( |
| IEnumVARIANT* This, |
| REFIID riid, |
| void** ppvObject); |
| |
| ULONG (CALLBACK *AddRef)( |
| IEnumVARIANT* This); |
| |
| ULONG (CALLBACK *Release)( |
| IEnumVARIANT* This); |
| |
| /*** IEnumVARIANT methods ***/ |
| HRESULT (CALLBACK *Next)( |
| IEnumVARIANT* This, |
| ULONG celt, |
| VARIANT* rgVar, |
| ULONG* pCeltFetched); |
| |
| HRESULT (CALLBACK *Skip)( |
| IEnumVARIANT* This, |
| ULONG celt); |
| |
| HRESULT (CALLBACK *Reset)( |
| IEnumVARIANT* This); |
| |
| HRESULT (CALLBACK *Clone)( |
| IEnumVARIANT* This, |
| IEnumVARIANT** ppEnum); |
| |
| }; |
| |
| #define IEnumVARIANT_IMETHODS \ |
| IUnknown_IMETHODS \ |
| ICOM_METHOD3 (HRESULT,Next,ULONG,celt,VARIANT*,rgVar,ULONG*,pCeltFetched) \ |
| ICOM_METHOD1 (HRESULT,Skip,ULONG,celt) \ |
| ICOM_METHOD (HRESULT,Reset) \ |
| ICOM_METHOD1 (HRESULT,Clone,IEnumVARIANT**,ppEnum) |
| |
| /*** IUnknown methods ***/ |
| #define IEnumVARIANT_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) |
| #define IEnumVARIANT_AddRef(p) (p)->lpVtbl->AddRef(p) |
| #define IEnumVARIANT_Release(p) (p)->lpVtbl->Release(p) |
| /*** IEnumVARIANT methods ***/ |
| #define IEnumVARIANT_Next(p,a,b,c) (p)->lpVtbl->Next(p,a,b,c) |
| #define IEnumVARIANT_Skip(p,a) (p)->lpVtbl->Skip(p,a) |
| #define IEnumVARIANT_Reset(p) (p)->lpVtbl->Reset(p) |
| #define IEnumVARIANT_Clone(p,a) (p)->lpVtbl->Clone(p,a) |
| |
| #endif |
| |
| HRESULT CALLBACK IEnumVARIANT_RemoteNext_Proxy( |
| IEnumVARIANT* This, |
| ULONG celt, |
| VARIANT* rgVar, |
| ULONG* pCeltFetched); |
| void __RPC_STUB IEnumVARIANT_RemoteNext_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IEnumVARIANT_Next_Proxy( |
| IEnumVARIANT* This, |
| ULONG celt, |
| VARIANT* rgVar, |
| ULONG* pCeltFetched); |
| HRESULT __RPC_STUB IEnumVARIANT_Next_Stub( |
| IEnumVARIANT* This, |
| ULONG celt, |
| VARIANT* rgVar, |
| ULONG* pCeltFetched); |
| HRESULT CALLBACK IEnumVARIANT_Skip_Proxy( |
| IEnumVARIANT* This, |
| ULONG celt); |
| void __RPC_STUB IEnumVARIANT_Skip_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IEnumVARIANT_Reset_Proxy( |
| IEnumVARIANT* This); |
| void __RPC_STUB IEnumVARIANT_Reset_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IEnumVARIANT_Clone_Proxy( |
| IEnumVARIANT* This, |
| IEnumVARIANT** ppEnum); |
| void __RPC_STUB IEnumVARIANT_Clone_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| |
| typedef struct ITypeComp ITypeComp; |
| typedef ITypeComp *LPTYPECOMP; |
| |
| typedef enum tagDESCKIND { |
| DESCKIND_NONE = 0, |
| DESCKIND_FUNCDESC, |
| DESCKIND_VARDESC, |
| DESCKIND_TYPECOMP, |
| DESCKIND_IMPLICITAPPOBJ, |
| DESCKIND_MAX |
| } DESCKIND; |
| |
| typedef union tagBINDPTR { |
| FUNCDESC *lpfuncdesc; |
| VARDESC *lpvardesc; |
| ITypeComp *lptcomp; |
| } BINDPTR, *LPBINDPTR; |
| |
| /***************************************************************************** |
| * ITypeComp interface |
| */ |
| DEFINE_GUID(IID_ITypeComp, 0x00020403, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| struct ITypeComp: IUnknown { |
| |
| virtual HRESULT CALLBACK Bind( |
| LPOLESTR szName, |
| ULONG lHashVal, |
| WORD wFlags, |
| ITypeInfo** ppTInfo, |
| DESCKIND* pDescKind, |
| BINDPTR* pBindPtr) = 0; |
| |
| virtual HRESULT CALLBACK BindType( |
| LPOLESTR szName, |
| ULONG lHashVal, |
| ITypeInfo** ppTInfo, |
| ITypeComp** ppTComp) = 0; |
| |
| } ICOM_COM_INTERFACE_ATTRIBUTE; |
| #else |
| typedef struct ITypeCompVtbl ITypeCompVtbl; |
| struct ITypeComp { |
| const ITypeCompVtbl* lpVtbl; |
| }; |
| struct ITypeCompVtbl { |
| ICOM_MSVTABLE_COMPAT_FIELDS |
| |
| /*** IUnknown methods ***/ |
| HRESULT (CALLBACK *QueryInterface)( |
| ITypeComp* This, |
| REFIID riid, |
| void** ppvObject); |
| |
| ULONG (CALLBACK *AddRef)( |
| ITypeComp* This); |
| |
| ULONG (CALLBACK *Release)( |
| ITypeComp* This); |
| |
| /*** ITypeComp methods ***/ |
| HRESULT (CALLBACK *Bind)( |
| ITypeComp* This, |
| LPOLESTR szName, |
| ULONG lHashVal, |
| WORD wFlags, |
| ITypeInfo** ppTInfo, |
| DESCKIND* pDescKind, |
| BINDPTR* pBindPtr); |
| |
| HRESULT (CALLBACK *BindType)( |
| ITypeComp* This, |
| LPOLESTR szName, |
| ULONG lHashVal, |
| ITypeInfo** ppTInfo, |
| ITypeComp** ppTComp); |
| |
| }; |
| |
| #define ITypeComp_IMETHODS \ |
| IUnknown_IMETHODS \ |
| ICOM_METHOD6 (HRESULT,Bind,LPOLESTR,szName,ULONG,lHashVal,WORD,wFlags,ITypeInfo**,ppTInfo,DESCKIND*,pDescKind,BINDPTR*,pBindPtr) \ |
| ICOM_METHOD4 (HRESULT,BindType,LPOLESTR,szName,ULONG,lHashVal,ITypeInfo**,ppTInfo,ITypeComp**,ppTComp) |
| |
| /*** IUnknown methods ***/ |
| #define ITypeComp_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) |
| #define ITypeComp_AddRef(p) (p)->lpVtbl->AddRef(p) |
| #define ITypeComp_Release(p) (p)->lpVtbl->Release(p) |
| /*** ITypeComp methods ***/ |
| #define ITypeComp_Bind(p,a,b,c,d,e,f) (p)->lpVtbl->Bind(p,a,b,c,d,e,f) |
| #define ITypeComp_BindType(p,a,b,c,d) (p)->lpVtbl->BindType(p,a,b,c,d) |
| |
| #endif |
| |
| HRESULT CALLBACK ITypeComp_RemoteBind_Proxy( |
| ITypeComp* This, |
| LPOLESTR szName, |
| ULONG lHashVal, |
| WORD wFlags, |
| ITypeInfo** ppTInfo, |
| DESCKIND* pDescKind, |
| LPFUNCDESC* ppFuncDesc, |
| LPVARDESC* ppVarDesc, |
| ITypeComp** ppTypeComp, |
| CLEANLOCALSTORAGE* pDummy); |
| void __RPC_STUB ITypeComp_RemoteBind_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeComp_Bind_Proxy( |
| ITypeComp* This, |
| LPOLESTR szName, |
| ULONG lHashVal, |
| WORD wFlags, |
| ITypeInfo** ppTInfo, |
| DESCKIND* pDescKind, |
| BINDPTR* pBindPtr); |
| HRESULT __RPC_STUB ITypeComp_Bind_Stub( |
| ITypeComp* This, |
| LPOLESTR szName, |
| ULONG lHashVal, |
| WORD wFlags, |
| ITypeInfo** ppTInfo, |
| DESCKIND* pDescKind, |
| LPFUNCDESC* ppFuncDesc, |
| LPVARDESC* ppVarDesc, |
| ITypeComp** ppTypeComp, |
| CLEANLOCALSTORAGE* pDummy); |
| HRESULT CALLBACK ITypeComp_RemoteBindType_Proxy( |
| ITypeComp* This, |
| LPOLESTR szName, |
| ULONG lHashVal, |
| ITypeInfo** ppTInfo); |
| void __RPC_STUB ITypeComp_RemoteBindType_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeComp_BindType_Proxy( |
| ITypeComp* This, |
| LPOLESTR szName, |
| ULONG lHashVal, |
| ITypeInfo** ppTInfo, |
| ITypeComp** ppTComp); |
| HRESULT __RPC_STUB ITypeComp_BindType_Stub( |
| ITypeComp* This, |
| LPOLESTR szName, |
| ULONG lHashVal, |
| ITypeInfo** ppTInfo); |
| |
| typedef ITypeInfo *LPTYPEINFO; |
| |
| /***************************************************************************** |
| * ITypeInfo interface |
| */ |
| DEFINE_GUID(IID_ITypeInfo, 0x00020401, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| struct ITypeInfo: IUnknown { |
| |
| virtual HRESULT CALLBACK GetTypeAttr( |
| TYPEATTR** ppTypeAttr) = 0; |
| |
| virtual HRESULT CALLBACK GetTypeComp( |
| ITypeComp** ppTComp) = 0; |
| |
| virtual HRESULT CALLBACK GetFuncDesc( |
| UINT index, |
| FUNCDESC** ppFuncDesc) = 0; |
| |
| virtual HRESULT CALLBACK GetVarDesc( |
| UINT index, |
| VARDESC** ppVarDesc) = 0; |
| |
| virtual HRESULT CALLBACK GetNames( |
| MEMBERID memid, |
| BSTR* rgBstrNames, |
| UINT cMaxNames, |
| UINT* pcNames) = 0; |
| |
| virtual HRESULT CALLBACK GetRefTypeOfImplType( |
| UINT index, |
| HREFTYPE* pRefType) = 0; |
| |
| virtual HRESULT CALLBACK GetImplTypeFlags( |
| UINT index, |
| INT* pImplTypeFlags) = 0; |
| |
| virtual HRESULT CALLBACK GetIDsOfNames( |
| LPOLESTR* rgszNames, |
| UINT cNames, |
| MEMBERID* pMemId) = 0; |
| |
| virtual HRESULT CALLBACK Invoke( |
| PVOID pvInstance, |
| MEMBERID memid, |
| WORD wFlags, |
| DISPPARAMS* pDispParams, |
| VARIANT* pVarResult, |
| EXCEPINFO* pExcepInfo, |
| UINT* puArgErr) = 0; |
| |
| virtual HRESULT CALLBACK GetDocumentation( |
| MEMBERID memid, |
| BSTR* pBstrName, |
| BSTR* pBstrDocString, |
| DWORD* pdwHelpContext, |
| BSTR* pBstrHelpFile) = 0; |
| |
| virtual HRESULT CALLBACK GetDllEntry( |
| MEMBERID memid, |
| INVOKEKIND invKind, |
| BSTR* pBstrDllName, |
| BSTR* pBstrName, |
| WORD* pwOrdinal) = 0; |
| |
| virtual HRESULT CALLBACK GetRefTypeInfo( |
| HREFTYPE hRefType, |
| ITypeInfo** ppTInfo) = 0; |
| |
| virtual HRESULT CALLBACK AddressOfMember( |
| MEMBERID memid, |
| INVOKEKIND invKind, |
| PVOID* ppv) = 0; |
| |
| virtual HRESULT CALLBACK CreateInstance( |
| IUnknown* pUnkOuter, |
| REFIID riid, |
| PVOID* ppvObj) = 0; |
| |
| virtual HRESULT CALLBACK GetMops( |
| MEMBERID memid, |
| BSTR* pBstrMops) = 0; |
| |
| virtual HRESULT CALLBACK GetContainingTypeLib( |
| ITypeLib** ppTLib, |
| UINT* pIndex) = 0; |
| |
| virtual void CALLBACK ReleaseTypeAttr( |
| TYPEATTR* pTypeAttr) = 0; |
| |
| virtual void CALLBACK ReleaseFuncDesc( |
| FUNCDESC* pFuncDesc) = 0; |
| |
| virtual void CALLBACK ReleaseVarDesc( |
| VARDESC* pVarDesc) = 0; |
| |
| } ICOM_COM_INTERFACE_ATTRIBUTE; |
| #else |
| typedef struct ITypeInfoVtbl ITypeInfoVtbl; |
| struct ITypeInfo { |
| const ITypeInfoVtbl* lpVtbl; |
| }; |
| struct ITypeInfoVtbl { |
| ICOM_MSVTABLE_COMPAT_FIELDS |
| |
| /*** IUnknown methods ***/ |
| HRESULT (CALLBACK *QueryInterface)( |
| ITypeInfo* This, |
| REFIID riid, |
| void** ppvObject); |
| |
| ULONG (CALLBACK *AddRef)( |
| ITypeInfo* This); |
| |
| ULONG (CALLBACK *Release)( |
| ITypeInfo* This); |
| |
| /*** ITypeInfo methods ***/ |
| HRESULT (CALLBACK *GetTypeAttr)( |
| ITypeInfo* This, |
| TYPEATTR** ppTypeAttr); |
| |
| HRESULT (CALLBACK *GetTypeComp)( |
| ITypeInfo* This, |
| ITypeComp** ppTComp); |
| |
| HRESULT (CALLBACK *GetFuncDesc)( |
| ITypeInfo* This, |
| UINT index, |
| FUNCDESC** ppFuncDesc); |
| |
| HRESULT (CALLBACK *GetVarDesc)( |
| ITypeInfo* This, |
| UINT index, |
| VARDESC** ppVarDesc); |
| |
| HRESULT (CALLBACK *GetNames)( |
| ITypeInfo* This, |
| MEMBERID memid, |
| BSTR* rgBstrNames, |
| UINT cMaxNames, |
| UINT* pcNames); |
| |
| HRESULT (CALLBACK *GetRefTypeOfImplType)( |
| ITypeInfo* This, |
| UINT index, |
| HREFTYPE* pRefType); |
| |
| HRESULT (CALLBACK *GetImplTypeFlags)( |
| ITypeInfo* This, |
| UINT index, |
| INT* pImplTypeFlags); |
| |
| HRESULT (CALLBACK *GetIDsOfNames)( |
| ITypeInfo* This, |
| LPOLESTR* rgszNames, |
| UINT cNames, |
| MEMBERID* pMemId); |
| |
| HRESULT (CALLBACK *Invoke)( |
| ITypeInfo* This, |
| PVOID pvInstance, |
| MEMBERID memid, |
| WORD wFlags, |
| DISPPARAMS* pDispParams, |
| VARIANT* pVarResult, |
| EXCEPINFO* pExcepInfo, |
| UINT* puArgErr); |
| |
| HRESULT (CALLBACK *GetDocumentation)( |
| ITypeInfo* This, |
| MEMBERID memid, |
| BSTR* pBstrName, |
| BSTR* pBstrDocString, |
| DWORD* pdwHelpContext, |
| BSTR* pBstrHelpFile); |
| |
| HRESULT (CALLBACK *GetDllEntry)( |
| ITypeInfo* This, |
| MEMBERID memid, |
| INVOKEKIND invKind, |
| BSTR* pBstrDllName, |
| BSTR* pBstrName, |
| WORD* pwOrdinal); |
| |
| HRESULT (CALLBACK *GetRefTypeInfo)( |
| ITypeInfo* This, |
| HREFTYPE hRefType, |
| ITypeInfo** ppTInfo); |
| |
| HRESULT (CALLBACK *AddressOfMember)( |
| ITypeInfo* This, |
| MEMBERID memid, |
| INVOKEKIND invKind, |
| PVOID* ppv); |
| |
| HRESULT (CALLBACK *CreateInstance)( |
| ITypeInfo* This, |
| IUnknown* pUnkOuter, |
| REFIID riid, |
| PVOID* ppvObj); |
| |
| HRESULT (CALLBACK *GetMops)( |
| ITypeInfo* This, |
| MEMBERID memid, |
| BSTR* pBstrMops); |
| |
| HRESULT (CALLBACK *GetContainingTypeLib)( |
| ITypeInfo* This, |
| ITypeLib** ppTLib, |
| UINT* pIndex); |
| |
| void (CALLBACK *ReleaseTypeAttr)( |
| ITypeInfo* This, |
| TYPEATTR* pTypeAttr); |
| |
| void (CALLBACK *ReleaseFuncDesc)( |
| ITypeInfo* This, |
| FUNCDESC* pFuncDesc); |
| |
| void (CALLBACK *ReleaseVarDesc)( |
| ITypeInfo* This, |
| VARDESC* pVarDesc); |
| |
| }; |
| |
| #define ITypeInfo_IMETHODS \ |
| IUnknown_IMETHODS \ |
| ICOM_METHOD1 (HRESULT,GetTypeAttr,TYPEATTR**,ppTypeAttr) \ |
| ICOM_METHOD1 (HRESULT,GetTypeComp,ITypeComp**,ppTComp) \ |
| ICOM_METHOD2 (HRESULT,GetFuncDesc,UINT,index,FUNCDESC**,ppFuncDesc) \ |
| ICOM_METHOD2 (HRESULT,GetVarDesc,UINT,index,VARDESC**,ppVarDesc) \ |
| ICOM_METHOD4 (HRESULT,GetNames,MEMBERID,memid,BSTR*,rgBstrNames,UINT,cMaxNames,UINT*,pcNames) \ |
| ICOM_METHOD2 (HRESULT,GetRefTypeOfImplType,UINT,index,HREFTYPE*,pRefType) \ |
| ICOM_METHOD2 (HRESULT,GetImplTypeFlags,UINT,index,INT*,pImplTypeFlags) \ |
| ICOM_METHOD3 (HRESULT,GetIDsOfNames,LPOLESTR*,rgszNames,UINT,cNames,MEMBERID*,pMemId) \ |
| ICOM_METHOD7 (HRESULT,Invoke,PVOID,pvInstance,MEMBERID,memid,WORD,wFlags,DISPPARAMS*,pDispParams,VARIANT*,pVarResult,EXCEPINFO*,pExcepInfo,UINT*,puArgErr) \ |
| ICOM_METHOD5 (HRESULT,GetDocumentation,MEMBERID,memid,BSTR*,pBstrName,BSTR*,pBstrDocString,DWORD*,pdwHelpContext,BSTR*,pBstrHelpFile) \ |
| ICOM_METHOD5 (HRESULT,GetDllEntry,MEMBERID,memid,INVOKEKIND,invKind,BSTR*,pBstrDllName,BSTR*,pBstrName,WORD*,pwOrdinal) \ |
| ICOM_METHOD2 (HRESULT,GetRefTypeInfo,HREFTYPE,hRefType,ITypeInfo**,ppTInfo) \ |
| ICOM_METHOD3 (HRESULT,AddressOfMember,MEMBERID,memid,INVOKEKIND,invKind,PVOID*,ppv) \ |
| ICOM_METHOD3 (HRESULT,CreateInstance,IUnknown*,pUnkOuter,REFIID,riid,PVOID*,ppvObj) \ |
| ICOM_METHOD2 (HRESULT,GetMops,MEMBERID,memid,BSTR*,pBstrMops) \ |
| ICOM_METHOD2 (HRESULT,GetContainingTypeLib,ITypeLib**,ppTLib,UINT*,pIndex) \ |
| ICOM_VMETHOD1(ReleaseTypeAttr,TYPEATTR*,pTypeAttr) \ |
| ICOM_VMETHOD1(ReleaseFuncDesc,FUNCDESC*,pFuncDesc) \ |
| ICOM_VMETHOD1(ReleaseVarDesc,VARDESC*,pVarDesc) |
| |
| /*** IUnknown methods ***/ |
| #define ITypeInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) |
| #define ITypeInfo_AddRef(p) (p)->lpVtbl->AddRef(p) |
| #define ITypeInfo_Release(p) (p)->lpVtbl->Release(p) |
| /*** ITypeInfo methods ***/ |
| #define ITypeInfo_GetTypeAttr(p,a) (p)->lpVtbl->GetTypeAttr(p,a) |
| #define ITypeInfo_GetTypeComp(p,a) (p)->lpVtbl->GetTypeComp(p,a) |
| #define ITypeInfo_GetFuncDesc(p,a,b) (p)->lpVtbl->GetFuncDesc(p,a,b) |
| #define ITypeInfo_GetVarDesc(p,a,b) (p)->lpVtbl->GetVarDesc(p,a,b) |
| #define ITypeInfo_GetNames(p,a,b,c,d) (p)->lpVtbl->GetNames(p,a,b,c,d) |
| #define ITypeInfo_GetRefTypeOfImplType(p,a,b) (p)->lpVtbl->GetRefTypeOfImplType(p,a,b) |
| #define ITypeInfo_GetImplTypeFlags(p,a,b) (p)->lpVtbl->GetImplTypeFlags(p,a,b) |
| #define ITypeInfo_GetIDsOfNames(p,a,b,c) (p)->lpVtbl->GetIDsOfNames(p,a,b,c) |
| #define ITypeInfo_Invoke(p,a,b,c,d,e,f,g) (p)->lpVtbl->Invoke(p,a,b,c,d,e,f,g) |
| #define ITypeInfo_GetDocumentation(p,a,b,c,d,e) (p)->lpVtbl->GetDocumentation(p,a,b,c,d,e) |
| #define ITypeInfo_GetDllEntry(p,a,b,c,d,e) (p)->lpVtbl->GetDllEntry(p,a,b,c,d,e) |
| #define ITypeInfo_GetRefTypeInfo(p,a,b) (p)->lpVtbl->GetRefTypeInfo(p,a,b) |
| #define ITypeInfo_AddressOfMember(p,a,b,c) (p)->lpVtbl->AddressOfMember(p,a,b,c) |
| #define ITypeInfo_CreateInstance(p,a,b,c) (p)->lpVtbl->CreateInstance(p,a,b,c) |
| #define ITypeInfo_GetMops(p,a,b) (p)->lpVtbl->GetMops(p,a,b) |
| #define ITypeInfo_GetContainingTypeLib(p,a,b) (p)->lpVtbl->GetContainingTypeLib(p,a,b) |
| #define ITypeInfo_ReleaseTypeAttr(p,a) (p)->lpVtbl->ReleaseTypeAttr(p,a) |
| #define ITypeInfo_ReleaseFuncDesc(p,a) (p)->lpVtbl->ReleaseFuncDesc(p,a) |
| #define ITypeInfo_ReleaseVarDesc(p,a) (p)->lpVtbl->ReleaseVarDesc(p,a) |
| |
| #endif |
| |
| HRESULT CALLBACK ITypeInfo_RemoteGetTypeAttr_Proxy( |
| ITypeInfo* This, |
| LPTYPEATTR* ppTypeAttr, |
| CLEANLOCALSTORAGE* pDummy); |
| void __RPC_STUB ITypeInfo_RemoteGetTypeAttr_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo_GetTypeAttr_Proxy( |
| ITypeInfo* This, |
| TYPEATTR** ppTypeAttr); |
| HRESULT __RPC_STUB ITypeInfo_GetTypeAttr_Stub( |
| ITypeInfo* This, |
| LPTYPEATTR* ppTypeAttr, |
| CLEANLOCALSTORAGE* pDummy); |
| HRESULT CALLBACK ITypeInfo_GetTypeComp_Proxy( |
| ITypeInfo* This, |
| ITypeComp** ppTComp); |
| void __RPC_STUB ITypeInfo_GetTypeComp_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo_RemoteGetFuncDesc_Proxy( |
| ITypeInfo* This, |
| UINT index, |
| LPFUNCDESC* ppFuncDesc, |
| CLEANLOCALSTORAGE* pDummy); |
| void __RPC_STUB ITypeInfo_RemoteGetFuncDesc_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo_GetFuncDesc_Proxy( |
| ITypeInfo* This, |
| UINT index, |
| FUNCDESC** ppFuncDesc); |
| HRESULT __RPC_STUB ITypeInfo_GetFuncDesc_Stub( |
| ITypeInfo* This, |
| UINT index, |
| LPFUNCDESC* ppFuncDesc, |
| CLEANLOCALSTORAGE* pDummy); |
| HRESULT CALLBACK ITypeInfo_RemoteGetVarDesc_Proxy( |
| ITypeInfo* This, |
| UINT index, |
| LPVARDESC* ppVarDesc, |
| CLEANLOCALSTORAGE* pDummy); |
| void __RPC_STUB ITypeInfo_RemoteGetVarDesc_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo_GetVarDesc_Proxy( |
| ITypeInfo* This, |
| UINT index, |
| VARDESC** ppVarDesc); |
| HRESULT __RPC_STUB ITypeInfo_GetVarDesc_Stub( |
| ITypeInfo* This, |
| UINT index, |
| LPVARDESC* ppVarDesc, |
| CLEANLOCALSTORAGE* pDummy); |
| HRESULT CALLBACK ITypeInfo_RemoteGetNames_Proxy( |
| ITypeInfo* This, |
| MEMBERID memid, |
| BSTR* rgBstrNames, |
| UINT cMaxNames, |
| UINT* pcNames); |
| void __RPC_STUB ITypeInfo_RemoteGetNames_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo_GetNames_Proxy( |
| ITypeInfo* This, |
| MEMBERID memid, |
| BSTR* rgBstrNames, |
| UINT cMaxNames, |
| UINT* pcNames); |
| HRESULT __RPC_STUB ITypeInfo_GetNames_Stub( |
| ITypeInfo* This, |
| MEMBERID memid, |
| BSTR* rgBstrNames, |
| UINT cMaxNames, |
| UINT* pcNames); |
| HRESULT CALLBACK ITypeInfo_GetRefTypeOfImplType_Proxy( |
| ITypeInfo* This, |
| UINT index, |
| HREFTYPE* pRefType); |
| void __RPC_STUB ITypeInfo_GetRefTypeOfImplType_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo_GetImplTypeFlags_Proxy( |
| ITypeInfo* This, |
| UINT index, |
| INT* pImplTypeFlags); |
| void __RPC_STUB ITypeInfo_GetImplTypeFlags_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo_LocalGetIDsOfNames_Proxy( |
| ITypeInfo* This); |
| void __RPC_STUB ITypeInfo_LocalGetIDsOfNames_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo_GetIDsOfNames_Proxy( |
| ITypeInfo* This, |
| LPOLESTR* rgszNames, |
| UINT cNames, |
| MEMBERID* pMemId); |
| HRESULT __RPC_STUB ITypeInfo_GetIDsOfNames_Stub( |
| ITypeInfo* This); |
| HRESULT CALLBACK ITypeInfo_LocalInvoke_Proxy( |
| ITypeInfo* This); |
| void __RPC_STUB ITypeInfo_LocalInvoke_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo_Invoke_Proxy( |
| ITypeInfo* This, |
| PVOID pvInstance, |
| MEMBERID memid, |
| WORD wFlags, |
| DISPPARAMS* pDispParams, |
| VARIANT* pVarResult, |
| EXCEPINFO* pExcepInfo, |
| UINT* puArgErr); |
| HRESULT __RPC_STUB ITypeInfo_Invoke_Stub( |
| ITypeInfo* This); |
| HRESULT CALLBACK ITypeInfo_RemoteGetDocumentation_Proxy( |
| ITypeInfo* This, |
| MEMBERID memid, |
| DWORD refPtrFlags, |
| BSTR* pBstrName, |
| BSTR* pBstrDocString, |
| DWORD* pdwHelpContext, |
| BSTR* pBstrHelpFile); |
| void __RPC_STUB ITypeInfo_RemoteGetDocumentation_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo_GetDocumentation_Proxy( |
| ITypeInfo* This, |
| MEMBERID memid, |
| BSTR* pBstrName, |
| BSTR* pBstrDocString, |
| DWORD* pdwHelpContext, |
| BSTR* pBstrHelpFile); |
| HRESULT __RPC_STUB ITypeInfo_GetDocumentation_Stub( |
| ITypeInfo* This, |
| MEMBERID memid, |
| DWORD refPtrFlags, |
| BSTR* pBstrName, |
| BSTR* pBstrDocString, |
| DWORD* pdwHelpContext, |
| BSTR* pBstrHelpFile); |
| HRESULT CALLBACK ITypeInfo_RemoteGetDllEntry_Proxy( |
| ITypeInfo* This, |
| MEMBERID memid, |
| INVOKEKIND invKind, |
| DWORD refPtrFlags, |
| BSTR* pBstrDllName, |
| BSTR* pBstrName, |
| WORD* pwOrdinal); |
| void __RPC_STUB ITypeInfo_RemoteGetDllEntry_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo_GetDllEntry_Proxy( |
| ITypeInfo* This, |
| MEMBERID memid, |
| INVOKEKIND invKind, |
| BSTR* pBstrDllName, |
| BSTR* pBstrName, |
| WORD* pwOrdinal); |
| HRESULT __RPC_STUB ITypeInfo_GetDllEntry_Stub( |
| ITypeInfo* This, |
| MEMBERID memid, |
| INVOKEKIND invKind, |
| DWORD refPtrFlags, |
| BSTR* pBstrDllName, |
| BSTR* pBstrName, |
| WORD* pwOrdinal); |
| HRESULT CALLBACK ITypeInfo_GetRefTypeInfo_Proxy( |
| ITypeInfo* This, |
| HREFTYPE hRefType, |
| ITypeInfo** ppTInfo); |
| void __RPC_STUB ITypeInfo_GetRefTypeInfo_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo_LocalAddressOfMember_Proxy( |
| ITypeInfo* This); |
| void __RPC_STUB ITypeInfo_LocalAddressOfMember_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo_AddressOfMember_Proxy( |
| ITypeInfo* This, |
| MEMBERID memid, |
| INVOKEKIND invKind, |
| PVOID* ppv); |
| HRESULT __RPC_STUB ITypeInfo_AddressOfMember_Stub( |
| ITypeInfo* This); |
| HRESULT CALLBACK ITypeInfo_RemoteCreateInstance_Proxy( |
| ITypeInfo* This, |
| REFIID riid, |
| IUnknown** ppvObj); |
| void __RPC_STUB ITypeInfo_RemoteCreateInstance_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo_CreateInstance_Proxy( |
| ITypeInfo* This, |
| IUnknown* pUnkOuter, |
| REFIID riid, |
| PVOID* ppvObj); |
| HRESULT __RPC_STUB ITypeInfo_CreateInstance_Stub( |
| ITypeInfo* This, |
| REFIID riid, |
| IUnknown** ppvObj); |
| HRESULT CALLBACK ITypeInfo_GetMops_Proxy( |
| ITypeInfo* This, |
| MEMBERID memid, |
| BSTR* pBstrMops); |
| void __RPC_STUB ITypeInfo_GetMops_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo_RemoteGetContainingTypeLib_Proxy( |
| ITypeInfo* This, |
| ITypeLib** ppTLib, |
| UINT* pIndex); |
| void __RPC_STUB ITypeInfo_RemoteGetContainingTypeLib_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo_GetContainingTypeLib_Proxy( |
| ITypeInfo* This, |
| ITypeLib** ppTLib, |
| UINT* pIndex); |
| HRESULT __RPC_STUB ITypeInfo_GetContainingTypeLib_Stub( |
| ITypeInfo* This, |
| ITypeLib** ppTLib, |
| UINT* pIndex); |
| HRESULT CALLBACK ITypeInfo_LocalReleaseTypeAttr_Proxy( |
| ITypeInfo* This); |
| void __RPC_STUB ITypeInfo_LocalReleaseTypeAttr_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| void CALLBACK ITypeInfo_ReleaseTypeAttr_Proxy( |
| ITypeInfo* This, |
| TYPEATTR* pTypeAttr); |
| HRESULT __RPC_STUB ITypeInfo_ReleaseTypeAttr_Stub( |
| ITypeInfo* This); |
| HRESULT CALLBACK ITypeInfo_LocalReleaseFuncDesc_Proxy( |
| ITypeInfo* This); |
| void __RPC_STUB ITypeInfo_LocalReleaseFuncDesc_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| void CALLBACK ITypeInfo_ReleaseFuncDesc_Proxy( |
| ITypeInfo* This, |
| FUNCDESC* pFuncDesc); |
| HRESULT __RPC_STUB ITypeInfo_ReleaseFuncDesc_Stub( |
| ITypeInfo* This); |
| HRESULT CALLBACK ITypeInfo_LocalReleaseVarDesc_Proxy( |
| ITypeInfo* This); |
| void __RPC_STUB ITypeInfo_LocalReleaseVarDesc_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| void CALLBACK ITypeInfo_ReleaseVarDesc_Proxy( |
| ITypeInfo* This, |
| VARDESC* pVarDesc); |
| HRESULT __RPC_STUB ITypeInfo_ReleaseVarDesc_Stub( |
| ITypeInfo* This); |
| |
| typedef struct ITypeInfo2 ITypeInfo2; |
| typedef ITypeInfo2 *LPTYPEINFO2; |
| |
| /***************************************************************************** |
| * ITypeInfo2 interface |
| */ |
| DEFINE_GUID(IID_ITypeInfo2, 0x00020412, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| struct ITypeInfo2: ITypeInfo { |
| |
| virtual HRESULT CALLBACK GetTypeKind( |
| TYPEKIND* pTypeKind) = 0; |
| |
| virtual HRESULT CALLBACK GetTypeFlags( |
| ULONG* pTypeFlags) = 0; |
| |
| virtual HRESULT CALLBACK GetFuncIndexOfMemId( |
| MEMBERID memid, |
| INVOKEKIND invKind, |
| UINT* pFuncIndex) = 0; |
| |
| virtual HRESULT CALLBACK GetVarIndexOfMemId( |
| MEMBERID memid, |
| UINT* pVarIndex) = 0; |
| |
| virtual HRESULT CALLBACK GetCustData( |
| REFGUID guid, |
| VARIANT* pVarVal) = 0; |
| |
| virtual HRESULT CALLBACK GetFuncCustData( |
| UINT index, |
| REFGUID guid, |
| VARIANT* pVarVal) = 0; |
| |
| virtual HRESULT CALLBACK GetParamCustData( |
| UINT indexFunc, |
| UINT indexParam, |
| REFGUID guid, |
| VARIANT* pVarVal) = 0; |
| |
| virtual HRESULT CALLBACK GetVarCustData( |
| UINT index, |
| REFGUID guid, |
| VARIANT* pVarVal) = 0; |
| |
| virtual HRESULT CALLBACK GetImplTypeCustData( |
| UINT index, |
| REFGUID guid, |
| VARIANT* pVarVal) = 0; |
| |
| virtual HRESULT CALLBACK GetDocumentation2( |
| MEMBERID memid, |
| LCID lcid, |
| BSTR* pbstrHelpString, |
| DWORD* pdwHelpStringContext, |
| BSTR* pbstrHelpStringDll) = 0; |
| |
| virtual HRESULT CALLBACK GetAllCustData( |
| CUSTDATA* pCustData) = 0; |
| |
| virtual HRESULT CALLBACK GetAllFuncCustData( |
| UINT index, |
| CUSTDATA* pCustData) = 0; |
| |
| virtual HRESULT CALLBACK GetAllParamCustData( |
| UINT indexFunc, |
| UINT indexParam, |
| CUSTDATA* pCustData) = 0; |
| |
| virtual HRESULT CALLBACK GetAllVarCustData( |
| UINT index, |
| CUSTDATA* pCustData) = 0; |
| |
| virtual HRESULT CALLBACK GetAllImplTypeCustData( |
| UINT index, |
| CUSTDATA* pCustData) = 0; |
| |
| } ICOM_COM_INTERFACE_ATTRIBUTE; |
| #else |
| typedef struct ITypeInfo2Vtbl ITypeInfo2Vtbl; |
| struct ITypeInfo2 { |
| const ITypeInfo2Vtbl* lpVtbl; |
| }; |
| struct ITypeInfo2Vtbl { |
| ICOM_MSVTABLE_COMPAT_FIELDS |
| |
| /*** IUnknown methods ***/ |
| HRESULT (CALLBACK *QueryInterface)( |
| ITypeInfo2* This, |
| REFIID riid, |
| void** ppvObject); |
| |
| ULONG (CALLBACK *AddRef)( |
| ITypeInfo2* This); |
| |
| ULONG (CALLBACK *Release)( |
| ITypeInfo2* This); |
| |
| /*** ITypeInfo methods ***/ |
| HRESULT (CALLBACK *GetTypeAttr)( |
| ITypeInfo2* This, |
| TYPEATTR** ppTypeAttr); |
| |
| HRESULT (CALLBACK *GetTypeComp)( |
| ITypeInfo2* This, |
| ITypeComp** ppTComp); |
| |
| HRESULT (CALLBACK *GetFuncDesc)( |
| ITypeInfo2* This, |
| UINT index, |
| FUNCDESC** ppFuncDesc); |
| |
| HRESULT (CALLBACK *GetVarDesc)( |
| ITypeInfo2* This, |
| UINT index, |
| VARDESC** ppVarDesc); |
| |
| HRESULT (CALLBACK *GetNames)( |
| ITypeInfo2* This, |
| MEMBERID memid, |
| BSTR* rgBstrNames, |
| UINT cMaxNames, |
| UINT* pcNames); |
| |
| HRESULT (CALLBACK *GetRefTypeOfImplType)( |
| ITypeInfo2* This, |
| UINT index, |
| HREFTYPE* pRefType); |
| |
| HRESULT (CALLBACK *GetImplTypeFlags)( |
| ITypeInfo2* This, |
| UINT index, |
| INT* pImplTypeFlags); |
| |
| HRESULT (CALLBACK *GetIDsOfNames)( |
| ITypeInfo2* This, |
| LPOLESTR* rgszNames, |
| UINT cNames, |
| MEMBERID* pMemId); |
| |
| HRESULT (CALLBACK *Invoke)( |
| ITypeInfo2* This, |
| PVOID pvInstance, |
| MEMBERID memid, |
| WORD wFlags, |
| DISPPARAMS* pDispParams, |
| VARIANT* pVarResult, |
| EXCEPINFO* pExcepInfo, |
| UINT* puArgErr); |
| |
| HRESULT (CALLBACK *GetDocumentation)( |
| ITypeInfo2* This, |
| MEMBERID memid, |
| BSTR* pBstrName, |
| BSTR* pBstrDocString, |
| DWORD* pdwHelpContext, |
| BSTR* pBstrHelpFile); |
| |
| HRESULT (CALLBACK *GetDllEntry)( |
| ITypeInfo2* This, |
| MEMBERID memid, |
| INVOKEKIND invKind, |
| BSTR* pBstrDllName, |
| BSTR* pBstrName, |
| WORD* pwOrdinal); |
| |
| HRESULT (CALLBACK *GetRefTypeInfo)( |
| ITypeInfo2* This, |
| HREFTYPE hRefType, |
| ITypeInfo** ppTInfo); |
| |
| HRESULT (CALLBACK *AddressOfMember)( |
| ITypeInfo2* This, |
| MEMBERID memid, |
| INVOKEKIND invKind, |
| PVOID* ppv); |
| |
| HRESULT (CALLBACK *CreateInstance)( |
| ITypeInfo2* This, |
| IUnknown* pUnkOuter, |
| REFIID riid, |
| PVOID* ppvObj); |
| |
| HRESULT (CALLBACK *GetMops)( |
| ITypeInfo2* This, |
| MEMBERID memid, |
| BSTR* pBstrMops); |
| |
| HRESULT (CALLBACK *GetContainingTypeLib)( |
| ITypeInfo2* This, |
| ITypeLib** ppTLib, |
| UINT* pIndex); |
| |
| void (CALLBACK *ReleaseTypeAttr)( |
| ITypeInfo2* This, |
| TYPEATTR* pTypeAttr); |
| |
| void (CALLBACK *ReleaseFuncDesc)( |
| ITypeInfo2* This, |
| FUNCDESC* pFuncDesc); |
| |
| void (CALLBACK *ReleaseVarDesc)( |
| ITypeInfo2* This, |
| VARDESC* pVarDesc); |
| |
| /*** ITypeInfo2 methods ***/ |
| HRESULT (CALLBACK *GetTypeKind)( |
| ITypeInfo2* This, |
| TYPEKIND* pTypeKind); |
| |
| HRESULT (CALLBACK *GetTypeFlags)( |
| ITypeInfo2* This, |
| ULONG* pTypeFlags); |
| |
| HRESULT (CALLBACK *GetFuncIndexOfMemId)( |
| ITypeInfo2* This, |
| MEMBERID memid, |
| INVOKEKIND invKind, |
| UINT* pFuncIndex); |
| |
| HRESULT (CALLBACK *GetVarIndexOfMemId)( |
| ITypeInfo2* This, |
| MEMBERID memid, |
| UINT* pVarIndex); |
| |
| HRESULT (CALLBACK *GetCustData)( |
| ITypeInfo2* This, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| |
| HRESULT (CALLBACK *GetFuncCustData)( |
| ITypeInfo2* This, |
| UINT index, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| |
| HRESULT (CALLBACK *GetParamCustData)( |
| ITypeInfo2* This, |
| UINT indexFunc, |
| UINT indexParam, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| |
| HRESULT (CALLBACK *GetVarCustData)( |
| ITypeInfo2* This, |
| UINT index, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| |
| HRESULT (CALLBACK *GetImplTypeCustData)( |
| ITypeInfo2* This, |
| UINT index, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| |
| HRESULT (CALLBACK *GetDocumentation2)( |
| ITypeInfo2* This, |
| MEMBERID memid, |
| LCID lcid, |
| BSTR* pbstrHelpString, |
| DWORD* pdwHelpStringContext, |
| BSTR* pbstrHelpStringDll); |
| |
| HRESULT (CALLBACK *GetAllCustData)( |
| ITypeInfo2* This, |
| CUSTDATA* pCustData); |
| |
| HRESULT (CALLBACK *GetAllFuncCustData)( |
| ITypeInfo2* This, |
| UINT index, |
| CUSTDATA* pCustData); |
| |
| HRESULT (CALLBACK *GetAllParamCustData)( |
| ITypeInfo2* This, |
| UINT indexFunc, |
| UINT indexParam, |
| CUSTDATA* pCustData); |
| |
| HRESULT (CALLBACK *GetAllVarCustData)( |
| ITypeInfo2* This, |
| UINT index, |
| CUSTDATA* pCustData); |
| |
| HRESULT (CALLBACK *GetAllImplTypeCustData)( |
| ITypeInfo2* This, |
| UINT index, |
| CUSTDATA* pCustData); |
| |
| }; |
| |
| #define ITypeInfo2_IMETHODS \ |
| ITypeInfo_IMETHODS \ |
| ICOM_METHOD1 (HRESULT,GetTypeKind,TYPEKIND*,pTypeKind) \ |
| ICOM_METHOD1 (HRESULT,GetTypeFlags,ULONG*,pTypeFlags) \ |
| ICOM_METHOD3 (HRESULT,GetFuncIndexOfMemId,MEMBERID,memid,INVOKEKIND,invKind,UINT*,pFuncIndex) \ |
| ICOM_METHOD2 (HRESULT,GetVarIndexOfMemId,MEMBERID,memid,UINT*,pVarIndex) \ |
| ICOM_METHOD2 (HRESULT,GetCustData,REFGUID,guid,VARIANT*,pVarVal) \ |
| ICOM_METHOD3 (HRESULT,GetFuncCustData,UINT,index,REFGUID,guid,VARIANT*,pVarVal) \ |
| ICOM_METHOD4 (HRESULT,GetParamCustData,UINT,indexFunc,UINT,indexParam,REFGUID,guid,VARIANT*,pVarVal) \ |
| ICOM_METHOD3 (HRESULT,GetVarCustData,UINT,index,REFGUID,guid,VARIANT*,pVarVal) \ |
| ICOM_METHOD3 (HRESULT,GetImplTypeCustData,UINT,index,REFGUID,guid,VARIANT*,pVarVal) \ |
| ICOM_METHOD5 (HRESULT,GetDocumentation2,MEMBERID,memid,LCID,lcid,BSTR*,pbstrHelpString,DWORD*,pdwHelpStringContext,BSTR*,pbstrHelpStringDll) \ |
| ICOM_METHOD1 (HRESULT,GetAllCustData,CUSTDATA*,pCustData) \ |
| ICOM_METHOD2 (HRESULT,GetAllFuncCustData,UINT,index,CUSTDATA*,pCustData) \ |
| ICOM_METHOD3 (HRESULT,GetAllParamCustData,UINT,indexFunc,UINT,indexParam,CUSTDATA*,pCustData) \ |
| ICOM_METHOD2 (HRESULT,GetAllVarCustData,UINT,index,CUSTDATA*,pCustData) \ |
| ICOM_METHOD2 (HRESULT,GetAllImplTypeCustData,UINT,index,CUSTDATA*,pCustData) |
| |
| /*** IUnknown methods ***/ |
| #define ITypeInfo2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) |
| #define ITypeInfo2_AddRef(p) (p)->lpVtbl->AddRef(p) |
| #define ITypeInfo2_Release(p) (p)->lpVtbl->Release(p) |
| /*** ITypeInfo methods ***/ |
| #define ITypeInfo2_GetTypeAttr(p,a) (p)->lpVtbl->GetTypeAttr(p,a) |
| #define ITypeInfo2_GetTypeComp(p,a) (p)->lpVtbl->GetTypeComp(p,a) |
| #define ITypeInfo2_GetFuncDesc(p,a,b) (p)->lpVtbl->GetFuncDesc(p,a,b) |
| #define ITypeInfo2_GetVarDesc(p,a,b) (p)->lpVtbl->GetVarDesc(p,a,b) |
| #define ITypeInfo2_GetNames(p,a,b,c,d) (p)->lpVtbl->GetNames(p,a,b,c,d) |
| #define ITypeInfo2_GetRefTypeOfImplType(p,a,b) (p)->lpVtbl->GetRefTypeOfImplType(p,a,b) |
| #define ITypeInfo2_GetImplTypeFlags(p,a,b) (p)->lpVtbl->GetImplTypeFlags(p,a,b) |
| #define ITypeInfo2_GetIDsOfNames(p,a,b,c) (p)->lpVtbl->GetIDsOfNames(p,a,b,c) |
| #define ITypeInfo2_Invoke(p,a,b,c,d,e,f,g) (p)->lpVtbl->Invoke(p,a,b,c,d,e,f,g) |
| #define ITypeInfo2_GetDocumentation(p,a,b,c,d,e) (p)->lpVtbl->GetDocumentation(p,a,b,c,d,e) |
| #define ITypeInfo2_GetDllEntry(p,a,b,c,d,e) (p)->lpVtbl->GetDllEntry(p,a,b,c,d,e) |
| #define ITypeInfo2_GetRefTypeInfo(p,a,b) (p)->lpVtbl->GetRefTypeInfo(p,a,b) |
| #define ITypeInfo2_AddressOfMember(p,a,b,c) (p)->lpVtbl->AddressOfMember(p,a,b,c) |
| #define ITypeInfo2_CreateInstance(p,a,b,c) (p)->lpVtbl->CreateInstance(p,a,b,c) |
| #define ITypeInfo2_GetMops(p,a,b) (p)->lpVtbl->GetMops(p,a,b) |
| #define ITypeInfo2_GetContainingTypeLib(p,a,b) (p)->lpVtbl->GetContainingTypeLib(p,a,b) |
| #define ITypeInfo2_ReleaseTypeAttr(p,a) (p)->lpVtbl->ReleaseTypeAttr(p,a) |
| #define ITypeInfo2_ReleaseFuncDesc(p,a) (p)->lpVtbl->ReleaseFuncDesc(p,a) |
| #define ITypeInfo2_ReleaseVarDesc(p,a) (p)->lpVtbl->ReleaseVarDesc(p,a) |
| /*** ITypeInfo2 methods ***/ |
| #define ITypeInfo2_GetTypeKind(p,a) (p)->lpVtbl->GetTypeKind(p,a) |
| #define ITypeInfo2_GetTypeFlags(p,a) (p)->lpVtbl->GetTypeFlags(p,a) |
| #define ITypeInfo2_GetFuncIndexOfMemId(p,a,b,c) (p)->lpVtbl->GetFuncIndexOfMemId(p,a,b,c) |
| #define ITypeInfo2_GetVarIndexOfMemId(p,a,b) (p)->lpVtbl->GetVarIndexOfMemId(p,a,b) |
| #define ITypeInfo2_GetCustData(p,a,b) (p)->lpVtbl->GetCustData(p,a,b) |
| #define ITypeInfo2_GetFuncCustData(p,a,b,c) (p)->lpVtbl->GetFuncCustData(p,a,b,c) |
| #define ITypeInfo2_GetParamCustData(p,a,b,c,d) (p)->lpVtbl->GetParamCustData(p,a,b,c,d) |
| #define ITypeInfo2_GetVarCustData(p,a,b,c) (p)->lpVtbl->GetVarCustData(p,a,b,c) |
| #define ITypeInfo2_GetImplTypeCustData(p,a,b,c) (p)->lpVtbl->GetImplTypeCustData(p,a,b,c) |
| #define ITypeInfo2_GetDocumentation2(p,a,b,c,d,e) (p)->lpVtbl->GetDocumentation2(p,a,b,c,d,e) |
| #define ITypeInfo2_GetAllCustData(p,a) (p)->lpVtbl->GetAllCustData(p,a) |
| #define ITypeInfo2_GetAllFuncCustData(p,a,b) (p)->lpVtbl->GetAllFuncCustData(p,a,b) |
| #define ITypeInfo2_GetAllParamCustData(p,a,b,c) (p)->lpVtbl->GetAllParamCustData(p,a,b,c) |
| #define ITypeInfo2_GetAllVarCustData(p,a,b) (p)->lpVtbl->GetAllVarCustData(p,a,b) |
| #define ITypeInfo2_GetAllImplTypeCustData(p,a,b) (p)->lpVtbl->GetAllImplTypeCustData(p,a,b) |
| |
| #endif |
| |
| HRESULT CALLBACK ITypeInfo2_GetTypeKind_Proxy( |
| ITypeInfo2* This, |
| TYPEKIND* pTypeKind); |
| void __RPC_STUB ITypeInfo2_GetTypeKind_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo2_GetTypeFlags_Proxy( |
| ITypeInfo2* This, |
| ULONG* pTypeFlags); |
| void __RPC_STUB ITypeInfo2_GetTypeFlags_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo2_GetFuncIndexOfMemId_Proxy( |
| ITypeInfo2* This, |
| MEMBERID memid, |
| INVOKEKIND invKind, |
| UINT* pFuncIndex); |
| void __RPC_STUB ITypeInfo2_GetFuncIndexOfMemId_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo2_GetVarIndexOfMemId_Proxy( |
| ITypeInfo2* This, |
| MEMBERID memid, |
| UINT* pVarIndex); |
| void __RPC_STUB ITypeInfo2_GetVarIndexOfMemId_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo2_GetCustData_Proxy( |
| ITypeInfo2* This, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| void __RPC_STUB ITypeInfo2_GetCustData_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo2_GetFuncCustData_Proxy( |
| ITypeInfo2* This, |
| UINT index, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| void __RPC_STUB ITypeInfo2_GetFuncCustData_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo2_GetParamCustData_Proxy( |
| ITypeInfo2* This, |
| UINT indexFunc, |
| UINT indexParam, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| void __RPC_STUB ITypeInfo2_GetParamCustData_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo2_GetVarCustData_Proxy( |
| ITypeInfo2* This, |
| UINT index, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| void __RPC_STUB ITypeInfo2_GetVarCustData_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo2_GetImplTypeCustData_Proxy( |
| ITypeInfo2* This, |
| UINT index, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| void __RPC_STUB ITypeInfo2_GetImplTypeCustData_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo2_RemoteGetDocumentation2_Proxy( |
| ITypeInfo2* This, |
| MEMBERID memid, |
| LCID lcid, |
| DWORD refPtrFlags, |
| BSTR* pbstrHelpString, |
| DWORD* pdwHelpStringContext, |
| BSTR* pbstrHelpStringDll); |
| void __RPC_STUB ITypeInfo2_RemoteGetDocumentation2_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo2_GetDocumentation2_Proxy( |
| ITypeInfo2* This, |
| MEMBERID memid, |
| LCID lcid, |
| BSTR* pbstrHelpString, |
| DWORD* pdwHelpStringContext, |
| BSTR* pbstrHelpStringDll); |
| HRESULT __RPC_STUB ITypeInfo2_GetDocumentation2_Stub( |
| ITypeInfo2* This, |
| MEMBERID memid, |
| LCID lcid, |
| DWORD refPtrFlags, |
| BSTR* pbstrHelpString, |
| DWORD* pdwHelpStringContext, |
| BSTR* pbstrHelpStringDll); |
| HRESULT CALLBACK ITypeInfo2_GetAllCustData_Proxy( |
| ITypeInfo2* This, |
| CUSTDATA* pCustData); |
| void __RPC_STUB ITypeInfo2_GetAllCustData_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo2_GetAllFuncCustData_Proxy( |
| ITypeInfo2* This, |
| UINT index, |
| CUSTDATA* pCustData); |
| void __RPC_STUB ITypeInfo2_GetAllFuncCustData_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo2_GetAllParamCustData_Proxy( |
| ITypeInfo2* This, |
| UINT indexFunc, |
| UINT indexParam, |
| CUSTDATA* pCustData); |
| void __RPC_STUB ITypeInfo2_GetAllParamCustData_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo2_GetAllVarCustData_Proxy( |
| ITypeInfo2* This, |
| UINT index, |
| CUSTDATA* pCustData); |
| void __RPC_STUB ITypeInfo2_GetAllVarCustData_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeInfo2_GetAllImplTypeCustData_Proxy( |
| ITypeInfo2* This, |
| UINT index, |
| CUSTDATA* pCustData); |
| void __RPC_STUB ITypeInfo2_GetAllImplTypeCustData_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| |
| typedef ITypeLib *LPTYPELIB; |
| |
| typedef enum tagSYSKIND { |
| SYS_WIN16 = 0, |
| SYS_WIN32, |
| SYS_MAC |
| } SYSKIND; |
| |
| typedef enum tagLIBFLAGS { |
| LIBFLAG_FRESTRICTED = 0x1, |
| LIBFLAG_FCONTROL = 0x2, |
| LIBFLAG_FHIDDEN = 0x4, |
| LIBFLAG_FHASDISKIMAGE = 0x8 |
| } LIBFLAGS; |
| |
| typedef struct tagTLIBATTR { |
| GUID guid; |
| LCID lcid; |
| SYSKIND syskind; |
| WORD wMajorVerNum; |
| WORD wMinorVerNum; |
| WORD wLibFlags; |
| } TLIBATTR, *LPTLIBATTR; |
| |
| /***************************************************************************** |
| * ITypeLib interface |
| */ |
| DEFINE_GUID(IID_ITypeLib, 0x00020402, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| struct ITypeLib: IUnknown { |
| |
| virtual UINT CALLBACK GetTypeInfoCount( |
| ) = 0; |
| |
| virtual HRESULT CALLBACK GetTypeInfo( |
| UINT index, |
| ITypeInfo** ppTInfo) = 0; |
| |
| virtual HRESULT CALLBACK GetTypeInfoType( |
| UINT index, |
| TYPEKIND* pTKind) = 0; |
| |
| virtual HRESULT CALLBACK GetTypeInfoOfGuid( |
| REFGUID guid, |
| ITypeInfo** ppTinfo) = 0; |
| |
| virtual HRESULT CALLBACK GetLibAttr( |
| TLIBATTR** ppTLibAttr) = 0; |
| |
| virtual HRESULT CALLBACK GetTypeComp( |
| ITypeComp** ppTComp) = 0; |
| |
| virtual HRESULT CALLBACK GetDocumentation( |
| INT index, |
| BSTR* pBstrName, |
| BSTR* pBstrDocString, |
| DWORD* pdwHelpContext, |
| BSTR* pBstrHelpFile) = 0; |
| |
| virtual HRESULT CALLBACK IsName( |
| LPOLESTR szNameBuf, |
| ULONG lHashVal, |
| BOOL* pfName) = 0; |
| |
| virtual HRESULT CALLBACK FindName( |
| LPOLESTR szNameBuf, |
| ULONG lHashVal, |
| ITypeInfo** ppTInfo, |
| MEMBERID* rgMemId, |
| USHORT* pcFound) = 0; |
| |
| virtual void CALLBACK ReleaseTLibAttr( |
| TLIBATTR* pTLibAttr) = 0; |
| |
| } ICOM_COM_INTERFACE_ATTRIBUTE; |
| #else |
| typedef struct ITypeLibVtbl ITypeLibVtbl; |
| struct ITypeLib { |
| const ITypeLibVtbl* lpVtbl; |
| }; |
| struct ITypeLibVtbl { |
| ICOM_MSVTABLE_COMPAT_FIELDS |
| |
| /*** IUnknown methods ***/ |
| HRESULT (CALLBACK *QueryInterface)( |
| ITypeLib* This, |
| REFIID riid, |
| void** ppvObject); |
| |
| ULONG (CALLBACK *AddRef)( |
| ITypeLib* This); |
| |
| ULONG (CALLBACK *Release)( |
| ITypeLib* This); |
| |
| /*** ITypeLib methods ***/ |
| UINT (CALLBACK *GetTypeInfoCount)( |
| ITypeLib* This); |
| |
| HRESULT (CALLBACK *GetTypeInfo)( |
| ITypeLib* This, |
| UINT index, |
| ITypeInfo** ppTInfo); |
| |
| HRESULT (CALLBACK *GetTypeInfoType)( |
| ITypeLib* This, |
| UINT index, |
| TYPEKIND* pTKind); |
| |
| HRESULT (CALLBACK *GetTypeInfoOfGuid)( |
| ITypeLib* This, |
| REFGUID guid, |
| ITypeInfo** ppTinfo); |
| |
| HRESULT (CALLBACK *GetLibAttr)( |
| ITypeLib* This, |
| TLIBATTR** ppTLibAttr); |
| |
| HRESULT (CALLBACK *GetTypeComp)( |
| ITypeLib* This, |
| ITypeComp** ppTComp); |
| |
| HRESULT (CALLBACK *GetDocumentation)( |
| ITypeLib* This, |
| INT index, |
| BSTR* pBstrName, |
| BSTR* pBstrDocString, |
| DWORD* pdwHelpContext, |
| BSTR* pBstrHelpFile); |
| |
| HRESULT (CALLBACK *IsName)( |
| ITypeLib* This, |
| LPOLESTR szNameBuf, |
| ULONG lHashVal, |
| BOOL* pfName); |
| |
| HRESULT (CALLBACK *FindName)( |
| ITypeLib* This, |
| LPOLESTR szNameBuf, |
| ULONG lHashVal, |
| ITypeInfo** ppTInfo, |
| MEMBERID* rgMemId, |
| USHORT* pcFound); |
| |
| void (CALLBACK *ReleaseTLibAttr)( |
| ITypeLib* This, |
| TLIBATTR* pTLibAttr); |
| |
| }; |
| |
| #define ITypeLib_IMETHODS \ |
| IUnknown_IMETHODS \ |
| ICOM_METHOD (UINT,GetTypeInfoCount) \ |
| ICOM_METHOD2 (HRESULT,GetTypeInfo,UINT,index,ITypeInfo**,ppTInfo) \ |
| ICOM_METHOD2 (HRESULT,GetTypeInfoType,UINT,index,TYPEKIND*,pTKind) \ |
| ICOM_METHOD2 (HRESULT,GetTypeInfoOfGuid,REFGUID,guid,ITypeInfo**,ppTinfo) \ |
| ICOM_METHOD1 (HRESULT,GetLibAttr,TLIBATTR**,ppTLibAttr) \ |
| ICOM_METHOD1 (HRESULT,GetTypeComp,ITypeComp**,ppTComp) \ |
| ICOM_METHOD5 (HRESULT,GetDocumentation,INT,index,BSTR*,pBstrName,BSTR*,pBstrDocString,DWORD*,pdwHelpContext,BSTR*,pBstrHelpFile) \ |
| ICOM_METHOD3 (HRESULT,IsName,LPOLESTR,szNameBuf,ULONG,lHashVal,BOOL*,pfName) \ |
| ICOM_METHOD5 (HRESULT,FindName,LPOLESTR,szNameBuf,ULONG,lHashVal,ITypeInfo**,ppTInfo,MEMBERID*,rgMemId,USHORT*,pcFound) \ |
| ICOM_VMETHOD1(ReleaseTLibAttr,TLIBATTR*,pTLibAttr) |
| |
| /*** IUnknown methods ***/ |
| #define ITypeLib_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) |
| #define ITypeLib_AddRef(p) (p)->lpVtbl->AddRef(p) |
| #define ITypeLib_Release(p) (p)->lpVtbl->Release(p) |
| /*** ITypeLib methods ***/ |
| #define ITypeLib_GetTypeInfoCount(p) (p)->lpVtbl->GetTypeInfoCount(p) |
| #define ITypeLib_GetTypeInfo(p,a,b) (p)->lpVtbl->GetTypeInfo(p,a,b) |
| #define ITypeLib_GetTypeInfoType(p,a,b) (p)->lpVtbl->GetTypeInfoType(p,a,b) |
| #define ITypeLib_GetTypeInfoOfGuid(p,a,b) (p)->lpVtbl->GetTypeInfoOfGuid(p,a,b) |
| #define ITypeLib_GetLibAttr(p,a) (p)->lpVtbl->GetLibAttr(p,a) |
| #define ITypeLib_GetTypeComp(p,a) (p)->lpVtbl->GetTypeComp(p,a) |
| #define ITypeLib_GetDocumentation(p,a,b,c,d,e) (p)->lpVtbl->GetDocumentation(p,a,b,c,d,e) |
| #define ITypeLib_IsName(p,a,b,c) (p)->lpVtbl->IsName(p,a,b,c) |
| #define ITypeLib_FindName(p,a,b,c,d,e) (p)->lpVtbl->FindName(p,a,b,c,d,e) |
| #define ITypeLib_ReleaseTLibAttr(p,a) (p)->lpVtbl->ReleaseTLibAttr(p,a) |
| |
| #endif |
| |
| HRESULT CALLBACK ITypeLib_RemoteGetTypeInfoCount_Proxy( |
| ITypeLib* This, |
| UINT* pcTInfo); |
| void __RPC_STUB ITypeLib_RemoteGetTypeInfoCount_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| UINT CALLBACK ITypeLib_GetTypeInfoCount_Proxy( |
| ITypeLib* This); |
| HRESULT __RPC_STUB ITypeLib_GetTypeInfoCount_Stub( |
| ITypeLib* This, |
| UINT* pcTInfo); |
| HRESULT CALLBACK ITypeLib_GetTypeInfo_Proxy( |
| ITypeLib* This, |
| UINT index, |
| ITypeInfo** ppTInfo); |
| void __RPC_STUB ITypeLib_GetTypeInfo_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeLib_GetTypeInfoType_Proxy( |
| ITypeLib* This, |
| UINT index, |
| TYPEKIND* pTKind); |
| void __RPC_STUB ITypeLib_GetTypeInfoType_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeLib_GetTypeInfoOfGuid_Proxy( |
| ITypeLib* This, |
| REFGUID guid, |
| ITypeInfo** ppTinfo); |
| void __RPC_STUB ITypeLib_GetTypeInfoOfGuid_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeLib_RemoteGetLibAttr_Proxy( |
| ITypeLib* This, |
| LPTLIBATTR* ppTLibAttr, |
| CLEANLOCALSTORAGE* pDummy); |
| void __RPC_STUB ITypeLib_RemoteGetLibAttr_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeLib_GetLibAttr_Proxy( |
| ITypeLib* This, |
| TLIBATTR** ppTLibAttr); |
| HRESULT __RPC_STUB ITypeLib_GetLibAttr_Stub( |
| ITypeLib* This, |
| LPTLIBATTR* ppTLibAttr, |
| CLEANLOCALSTORAGE* pDummy); |
| HRESULT CALLBACK ITypeLib_GetTypeComp_Proxy( |
| ITypeLib* This, |
| ITypeComp** ppTComp); |
| void __RPC_STUB ITypeLib_GetTypeComp_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeLib_RemoteGetDocumentation_Proxy( |
| ITypeLib* This, |
| INT index, |
| DWORD refPtrFlags, |
| BSTR* pBstrName, |
| BSTR* pBstrDocString, |
| DWORD* pdwHelpContext, |
| BSTR* pBstrHelpFile); |
| void __RPC_STUB ITypeLib_RemoteGetDocumentation_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeLib_GetDocumentation_Proxy( |
| ITypeLib* This, |
| INT index, |
| BSTR* pBstrName, |
| BSTR* pBstrDocString, |
| DWORD* pdwHelpContext, |
| BSTR* pBstrHelpFile); |
| HRESULT __RPC_STUB ITypeLib_GetDocumentation_Stub( |
| ITypeLib* This, |
| INT index, |
| DWORD refPtrFlags, |
| BSTR* pBstrName, |
| BSTR* pBstrDocString, |
| DWORD* pdwHelpContext, |
| BSTR* pBstrHelpFile); |
| HRESULT CALLBACK ITypeLib_RemoteIsName_Proxy( |
| ITypeLib* This, |
| LPOLESTR szNameBuf, |
| ULONG lHashVal, |
| BOOL* pfName, |
| BSTR* pBstrLibName); |
| void __RPC_STUB ITypeLib_RemoteIsName_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeLib_IsName_Proxy( |
| ITypeLib* This, |
| LPOLESTR szNameBuf, |
| ULONG lHashVal, |
| BOOL* pfName); |
| HRESULT __RPC_STUB ITypeLib_IsName_Stub( |
| ITypeLib* This, |
| LPOLESTR szNameBuf, |
| ULONG lHashVal, |
| BOOL* pfName, |
| BSTR* pBstrLibName); |
| HRESULT CALLBACK ITypeLib_RemoteFindName_Proxy( |
| ITypeLib* This, |
| LPOLESTR szNameBuf, |
| ULONG lHashVal, |
| ITypeInfo** ppTInfo, |
| MEMBERID* rgMemId, |
| USHORT* pcFound, |
| BSTR* pBstrLibName); |
| void __RPC_STUB ITypeLib_RemoteFindName_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeLib_FindName_Proxy( |
| ITypeLib* This, |
| LPOLESTR szNameBuf, |
| ULONG lHashVal, |
| ITypeInfo** ppTInfo, |
| MEMBERID* rgMemId, |
| USHORT* pcFound); |
| HRESULT __RPC_STUB ITypeLib_FindName_Stub( |
| ITypeLib* This, |
| LPOLESTR szNameBuf, |
| ULONG lHashVal, |
| ITypeInfo** ppTInfo, |
| MEMBERID* rgMemId, |
| USHORT* pcFound, |
| BSTR* pBstrLibName); |
| HRESULT CALLBACK ITypeLib_LocalReleaseTLibAttr_Proxy( |
| ITypeLib* This); |
| void __RPC_STUB ITypeLib_LocalReleaseTLibAttr_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| void CALLBACK ITypeLib_ReleaseTLibAttr_Proxy( |
| ITypeLib* This, |
| TLIBATTR* pTLibAttr); |
| HRESULT __RPC_STUB ITypeLib_ReleaseTLibAttr_Stub( |
| ITypeLib* This); |
| |
| typedef struct ITypeLib2 ITypeLib2; |
| typedef ITypeLib2 *LPTYPELIB2; |
| |
| /***************************************************************************** |
| * ITypeLib2 interface |
| */ |
| DEFINE_GUID(IID_ITypeLib2, 0x00020411, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| struct ITypeLib2: ITypeLib { |
| |
| virtual HRESULT CALLBACK GetCustData( |
| REFGUID guid, |
| VARIANT* pVarVal) = 0; |
| |
| virtual HRESULT CALLBACK GetLibStatistics( |
| ULONG* pcUniqueNames, |
| ULONG* pcchUniqueNames) = 0; |
| |
| virtual HRESULT CALLBACK GetDocumentation2( |
| INT index, |
| LCID lcid, |
| BSTR* pbstrHelpString, |
| DWORD* pdwHelpStringContext, |
| BSTR* pbstrHelpStringDll) = 0; |
| |
| virtual HRESULT CALLBACK GetAllCustData( |
| CUSTDATA* pCustData) = 0; |
| |
| } ICOM_COM_INTERFACE_ATTRIBUTE; |
| #else |
| typedef struct ITypeLib2Vtbl ITypeLib2Vtbl; |
| struct ITypeLib2 { |
| const ITypeLib2Vtbl* lpVtbl; |
| }; |
| struct ITypeLib2Vtbl { |
| ICOM_MSVTABLE_COMPAT_FIELDS |
| |
| /*** IUnknown methods ***/ |
| HRESULT (CALLBACK *QueryInterface)( |
| ITypeLib2* This, |
| REFIID riid, |
| void** ppvObject); |
| |
| ULONG (CALLBACK *AddRef)( |
| ITypeLib2* This); |
| |
| ULONG (CALLBACK *Release)( |
| ITypeLib2* This); |
| |
| /*** ITypeLib methods ***/ |
| UINT (CALLBACK *GetTypeInfoCount)( |
| ITypeLib2* This); |
| |
| HRESULT (CALLBACK *GetTypeInfo)( |
| ITypeLib2* This, |
| UINT index, |
| ITypeInfo** ppTInfo); |
| |
| HRESULT (CALLBACK *GetTypeInfoType)( |
| ITypeLib2* This, |
| UINT index, |
| TYPEKIND* pTKind); |
| |
| HRESULT (CALLBACK *GetTypeInfoOfGuid)( |
| ITypeLib2* This, |
| REFGUID guid, |
| ITypeInfo** ppTinfo); |
| |
| HRESULT (CALLBACK *GetLibAttr)( |
| ITypeLib2* This, |
| TLIBATTR** ppTLibAttr); |
| |
| HRESULT (CALLBACK *GetTypeComp)( |
| ITypeLib2* This, |
| ITypeComp** ppTComp); |
| |
| HRESULT (CALLBACK *GetDocumentation)( |
| ITypeLib2* This, |
| INT index, |
| BSTR* pBstrName, |
| BSTR* pBstrDocString, |
| DWORD* pdwHelpContext, |
| BSTR* pBstrHelpFile); |
| |
| HRESULT (CALLBACK *IsName)( |
| ITypeLib2* This, |
| LPOLESTR szNameBuf, |
| ULONG lHashVal, |
| BOOL* pfName); |
| |
| HRESULT (CALLBACK *FindName)( |
| ITypeLib2* This, |
| LPOLESTR szNameBuf, |
| ULONG lHashVal, |
| ITypeInfo** ppTInfo, |
| MEMBERID* rgMemId, |
| USHORT* pcFound); |
| |
| void (CALLBACK *ReleaseTLibAttr)( |
| ITypeLib2* This, |
| TLIBATTR* pTLibAttr); |
| |
| /*** ITypeLib2 methods ***/ |
| HRESULT (CALLBACK *GetCustData)( |
| ITypeLib2* This, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| |
| HRESULT (CALLBACK *GetLibStatistics)( |
| ITypeLib2* This, |
| ULONG* pcUniqueNames, |
| ULONG* pcchUniqueNames); |
| |
| HRESULT (CALLBACK *GetDocumentation2)( |
| ITypeLib2* This, |
| INT index, |
| LCID lcid, |
| BSTR* pbstrHelpString, |
| DWORD* pdwHelpStringContext, |
| BSTR* pbstrHelpStringDll); |
| |
| HRESULT (CALLBACK *GetAllCustData)( |
| ITypeLib2* This, |
| CUSTDATA* pCustData); |
| |
| }; |
| |
| #define ITypeLib2_IMETHODS \ |
| ITypeLib_IMETHODS \ |
| ICOM_METHOD2 (HRESULT,GetCustData,REFGUID,guid,VARIANT*,pVarVal) \ |
| ICOM_METHOD2 (HRESULT,GetLibStatistics,ULONG*,pcUniqueNames,ULONG*,pcchUniqueNames) \ |
| ICOM_METHOD5 (HRESULT,GetDocumentation2,INT,index,LCID,lcid,BSTR*,pbstrHelpString,DWORD*,pdwHelpStringContext,BSTR*,pbstrHelpStringDll) \ |
| ICOM_METHOD1 (HRESULT,GetAllCustData,CUSTDATA*,pCustData) |
| |
| /*** IUnknown methods ***/ |
| #define ITypeLib2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) |
| #define ITypeLib2_AddRef(p) (p)->lpVtbl->AddRef(p) |
| #define ITypeLib2_Release(p) (p)->lpVtbl->Release(p) |
| /*** ITypeLib methods ***/ |
| #define ITypeLib2_GetTypeInfoCount(p) (p)->lpVtbl->GetTypeInfoCount(p) |
| #define ITypeLib2_GetTypeInfo(p,a,b) (p)->lpVtbl->GetTypeInfo(p,a,b) |
| #define ITypeLib2_GetTypeInfoType(p,a,b) (p)->lpVtbl->GetTypeInfoType(p,a,b) |
| #define ITypeLib2_GetTypeInfoOfGuid(p,a,b) (p)->lpVtbl->GetTypeInfoOfGuid(p,a,b) |
| #define ITypeLib2_GetLibAttr(p,a) (p)->lpVtbl->GetLibAttr(p,a) |
| #define ITypeLib2_GetTypeComp(p,a) (p)->lpVtbl->GetTypeComp(p,a) |
| #define ITypeLib2_GetDocumentation(p,a,b,c,d,e) (p)->lpVtbl->GetDocumentation(p,a,b,c,d,e) |
| #define ITypeLib2_IsName(p,a,b,c) (p)->lpVtbl->IsName(p,a,b,c) |
| #define ITypeLib2_FindName(p,a,b,c,d,e) (p)->lpVtbl->FindName(p,a,b,c,d,e) |
| #define ITypeLib2_ReleaseTLibAttr(p,a) (p)->lpVtbl->ReleaseTLibAttr(p,a) |
| /*** ITypeLib2 methods ***/ |
| #define ITypeLib2_GetCustData(p,a,b) (p)->lpVtbl->GetCustData(p,a,b) |
| #define ITypeLib2_GetLibStatistics(p,a,b) (p)->lpVtbl->GetLibStatistics(p,a,b) |
| #define ITypeLib2_GetDocumentation2(p,a,b,c,d,e) (p)->lpVtbl->GetDocumentation2(p,a,b,c,d,e) |
| #define ITypeLib2_GetAllCustData(p,a) (p)->lpVtbl->GetAllCustData(p,a) |
| |
| #endif |
| |
| HRESULT CALLBACK ITypeLib2_GetCustData_Proxy( |
| ITypeLib2* This, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| void __RPC_STUB ITypeLib2_GetCustData_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeLib2_RemoteGetLibStatistics_Proxy( |
| ITypeLib2* This, |
| ULONG* pcUniqueNames, |
| ULONG* pcchUniqueNames); |
| void __RPC_STUB ITypeLib2_RemoteGetLibStatistics_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeLib2_GetLibStatistics_Proxy( |
| ITypeLib2* This, |
| ULONG* pcUniqueNames, |
| ULONG* pcchUniqueNames); |
| HRESULT __RPC_STUB ITypeLib2_GetLibStatistics_Stub( |
| ITypeLib2* This, |
| ULONG* pcUniqueNames, |
| ULONG* pcchUniqueNames); |
| HRESULT CALLBACK ITypeLib2_RemoteGetDocumentation2_Proxy( |
| ITypeLib2* This, |
| INT index, |
| LCID lcid, |
| DWORD refPtrFlags, |
| BSTR* pbstrHelpString, |
| DWORD* pdwHelpStringContext, |
| BSTR* pbstrHelpStringDll); |
| void __RPC_STUB ITypeLib2_RemoteGetDocumentation2_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeLib2_GetDocumentation2_Proxy( |
| ITypeLib2* This, |
| INT index, |
| LCID lcid, |
| BSTR* pbstrHelpString, |
| DWORD* pdwHelpStringContext, |
| BSTR* pbstrHelpStringDll); |
| HRESULT __RPC_STUB ITypeLib2_GetDocumentation2_Stub( |
| ITypeLib2* This, |
| INT index, |
| LCID lcid, |
| DWORD refPtrFlags, |
| BSTR* pbstrHelpString, |
| DWORD* pdwHelpStringContext, |
| BSTR* pbstrHelpStringDll); |
| HRESULT CALLBACK ITypeLib2_GetAllCustData_Proxy( |
| ITypeLib2* This, |
| CUSTDATA* pCustData); |
| void __RPC_STUB ITypeLib2_GetAllCustData_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| |
| typedef struct ITypeChangeEvents ITypeChangeEvents; |
| typedef ITypeChangeEvents *LPTYPECHANGEEVENTS; |
| |
| typedef enum tagCHANGEKIND { |
| CHANGEKIND_ADDMEMBER, |
| CHANGEKIND_DELETEMEMBER, |
| CHANGEKIND_SETNAMES, |
| CHANGEKIND_SETDOCUMENTATION, |
| CHANGEKIND_GENERAL, |
| CHANGEKIND_INVALIDATE, |
| CHANGEKIND_CHANGEFAILED, |
| CHANGEKIND_MAX |
| } CHANGEKIND; |
| |
| /***************************************************************************** |
| * ITypeChangeEvents interface |
| */ |
| DEFINE_GUID(IID_ITypeChangeEvents, 0x00020410, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| struct ITypeChangeEvents: IUnknown { |
| |
| virtual HRESULT CALLBACK RequestTypeChange( |
| CHANGEKIND changeKind, |
| ITypeInfo* pTInfoBefore, |
| LPOLESTR pStrName, |
| INT* pfCancel) = 0; |
| |
| virtual HRESULT CALLBACK AfterTypeChange( |
| CHANGEKIND changeKind, |
| ITypeInfo* pTInfoAfter, |
| LPOLESTR pStrName) = 0; |
| |
| } ICOM_COM_INTERFACE_ATTRIBUTE; |
| #else |
| typedef struct ITypeChangeEventsVtbl ITypeChangeEventsVtbl; |
| struct ITypeChangeEvents { |
| const ITypeChangeEventsVtbl* lpVtbl; |
| }; |
| struct ITypeChangeEventsVtbl { |
| ICOM_MSVTABLE_COMPAT_FIELDS |
| |
| /*** IUnknown methods ***/ |
| HRESULT (CALLBACK *QueryInterface)( |
| ITypeChangeEvents* This, |
| REFIID riid, |
| void** ppvObject); |
| |
| ULONG (CALLBACK *AddRef)( |
| ITypeChangeEvents* This); |
| |
| ULONG (CALLBACK *Release)( |
| ITypeChangeEvents* This); |
| |
| /*** ITypeChangeEvents methods ***/ |
| HRESULT (CALLBACK *RequestTypeChange)( |
| ITypeChangeEvents* This, |
| CHANGEKIND changeKind, |
| ITypeInfo* pTInfoBefore, |
| LPOLESTR pStrName, |
| INT* pfCancel); |
| |
| HRESULT (CALLBACK *AfterTypeChange)( |
| ITypeChangeEvents* This, |
| CHANGEKIND changeKind, |
| ITypeInfo* pTInfoAfter, |
| LPOLESTR pStrName); |
| |
| }; |
| |
| #define ITypeChangeEvents_IMETHODS \ |
| IUnknown_IMETHODS \ |
| ICOM_METHOD4 (HRESULT,RequestTypeChange,CHANGEKIND,changeKind,ITypeInfo*,pTInfoBefore,LPOLESTR,pStrName,INT*,pfCancel) \ |
| ICOM_METHOD3 (HRESULT,AfterTypeChange,CHANGEKIND,changeKind,ITypeInfo*,pTInfoAfter,LPOLESTR,pStrName) |
| |
| /*** IUnknown methods ***/ |
| #define ITypeChangeEvents_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) |
| #define ITypeChangeEvents_AddRef(p) (p)->lpVtbl->AddRef(p) |
| #define ITypeChangeEvents_Release(p) (p)->lpVtbl->Release(p) |
| /*** ITypeChangeEvents methods ***/ |
| #define ITypeChangeEvents_RequestTypeChange(p,a,b,c,d) (p)->lpVtbl->RequestTypeChange(p,a,b,c,d) |
| #define ITypeChangeEvents_AfterTypeChange(p,a,b,c) (p)->lpVtbl->AfterTypeChange(p,a,b,c) |
| |
| #endif |
| |
| HRESULT CALLBACK ITypeChangeEvents_RequestTypeChange_Proxy( |
| ITypeChangeEvents* This, |
| CHANGEKIND changeKind, |
| ITypeInfo* pTInfoBefore, |
| LPOLESTR pStrName, |
| INT* pfCancel); |
| void __RPC_STUB ITypeChangeEvents_RequestTypeChange_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeChangeEvents_AfterTypeChange_Proxy( |
| ITypeChangeEvents* This, |
| CHANGEKIND changeKind, |
| ITypeInfo* pTInfoAfter, |
| LPOLESTR pStrName); |
| void __RPC_STUB ITypeChangeEvents_AfterTypeChange_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| |
| typedef struct IErrorInfo IErrorInfo; |
| typedef IErrorInfo *LPERRORINFO; |
| |
| /***************************************************************************** |
| * IErrorInfo interface |
| */ |
| DEFINE_GUID(IID_IErrorInfo, 0x1cf2b120, 0x547d, 0x101b, 0x8e,0x65, 0x08,0x00,0x2b,0x2b,0xd1,0x19); |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| struct IErrorInfo: IUnknown { |
| |
| virtual HRESULT CALLBACK GetGUID( |
| GUID* pGUID) = 0; |
| |
| virtual HRESULT CALLBACK GetSource( |
| BSTR* pBstrSource) = 0; |
| |
| virtual HRESULT CALLBACK GetDescription( |
| BSTR* pBstrDescription) = 0; |
| |
| virtual HRESULT CALLBACK GetHelpFile( |
| BSTR* pBstrHelpFile) = 0; |
| |
| virtual HRESULT CALLBACK GetHelpContext( |
| DWORD* pdwHelpContext) = 0; |
| |
| } ICOM_COM_INTERFACE_ATTRIBUTE; |
| #else |
| typedef struct IErrorInfoVtbl IErrorInfoVtbl; |
| struct IErrorInfo { |
| const IErrorInfoVtbl* lpVtbl; |
| }; |
| struct IErrorInfoVtbl { |
| ICOM_MSVTABLE_COMPAT_FIELDS |
| |
| /*** IUnknown methods ***/ |
| HRESULT (CALLBACK *QueryInterface)( |
| IErrorInfo* This, |
| REFIID riid, |
| void** ppvObject); |
| |
| ULONG (CALLBACK *AddRef)( |
| IErrorInfo* This); |
| |
| ULONG (CALLBACK *Release)( |
| IErrorInfo* This); |
| |
| /*** IErrorInfo methods ***/ |
| HRESULT (CALLBACK *GetGUID)( |
| IErrorInfo* This, |
| GUID* pGUID); |
| |
| HRESULT (CALLBACK *GetSource)( |
| IErrorInfo* This, |
| BSTR* pBstrSource); |
| |
| HRESULT (CALLBACK *GetDescription)( |
| IErrorInfo* This, |
| BSTR* pBstrDescription); |
| |
| HRESULT (CALLBACK *GetHelpFile)( |
| IErrorInfo* This, |
| BSTR* pBstrHelpFile); |
| |
| HRESULT (CALLBACK *GetHelpContext)( |
| IErrorInfo* This, |
| DWORD* pdwHelpContext); |
| |
| }; |
| |
| #define IErrorInfo_IMETHODS \ |
| IUnknown_IMETHODS \ |
| ICOM_METHOD1 (HRESULT,GetGUID,GUID*,pGUID) \ |
| ICOM_METHOD1 (HRESULT,GetSource,BSTR*,pBstrSource) \ |
| ICOM_METHOD1 (HRESULT,GetDescription,BSTR*,pBstrDescription) \ |
| ICOM_METHOD1 (HRESULT,GetHelpFile,BSTR*,pBstrHelpFile) \ |
| ICOM_METHOD1 (HRESULT,GetHelpContext,DWORD*,pdwHelpContext) |
| |
| /*** IUnknown methods ***/ |
| #define IErrorInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) |
| #define IErrorInfo_AddRef(p) (p)->lpVtbl->AddRef(p) |
| #define IErrorInfo_Release(p) (p)->lpVtbl->Release(p) |
| /*** IErrorInfo methods ***/ |
| #define IErrorInfo_GetGUID(p,a) (p)->lpVtbl->GetGUID(p,a) |
| #define IErrorInfo_GetSource(p,a) (p)->lpVtbl->GetSource(p,a) |
| #define IErrorInfo_GetDescription(p,a) (p)->lpVtbl->GetDescription(p,a) |
| #define IErrorInfo_GetHelpFile(p,a) (p)->lpVtbl->GetHelpFile(p,a) |
| #define IErrorInfo_GetHelpContext(p,a) (p)->lpVtbl->GetHelpContext(p,a) |
| |
| #endif |
| |
| HRESULT CALLBACK IErrorInfo_GetGUID_Proxy( |
| IErrorInfo* This, |
| GUID* pGUID); |
| void __RPC_STUB IErrorInfo_GetGUID_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IErrorInfo_GetSource_Proxy( |
| IErrorInfo* This, |
| BSTR* pBstrSource); |
| void __RPC_STUB IErrorInfo_GetSource_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IErrorInfo_GetDescription_Proxy( |
| IErrorInfo* This, |
| BSTR* pBstrDescription); |
| void __RPC_STUB IErrorInfo_GetDescription_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IErrorInfo_GetHelpFile_Proxy( |
| IErrorInfo* This, |
| BSTR* pBstrHelpFile); |
| void __RPC_STUB IErrorInfo_GetHelpFile_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IErrorInfo_GetHelpContext_Proxy( |
| IErrorInfo* This, |
| DWORD* pdwHelpContext); |
| void __RPC_STUB IErrorInfo_GetHelpContext_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| |
| typedef struct ICreateErrorInfo ICreateErrorInfo; |
| typedef ICreateErrorInfo *LPCREATEERRORINFO; |
| |
| /***************************************************************************** |
| * ICreateErrorInfo interface |
| */ |
| DEFINE_GUID(IID_ICreateErrorInfo, 0x22f03340, 0x547d, 0x101b, 0x8e,0x65, 0x08,0x00,0x2b,0x2b,0xd1,0x19); |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| struct ICreateErrorInfo: IUnknown { |
| |
| virtual HRESULT CALLBACK SetGUID( |
| REFGUID rguid) = 0; |
| |
| virtual HRESULT CALLBACK SetSource( |
| LPOLESTR szSource) = 0; |
| |
| virtual HRESULT CALLBACK SetDescription( |
| LPOLESTR szDescription) = 0; |
| |
| virtual HRESULT CALLBACK SetHelpFile( |
| LPOLESTR szHelpFile) = 0; |
| |
| virtual HRESULT CALLBACK SetHelpContext( |
| DWORD dwHelpContext) = 0; |
| |
| } ICOM_COM_INTERFACE_ATTRIBUTE; |
| #else |
| typedef struct ICreateErrorInfoVtbl ICreateErrorInfoVtbl; |
| struct ICreateErrorInfo { |
| const ICreateErrorInfoVtbl* lpVtbl; |
| }; |
| struct ICreateErrorInfoVtbl { |
| ICOM_MSVTABLE_COMPAT_FIELDS |
| |
| /*** IUnknown methods ***/ |
| HRESULT (CALLBACK *QueryInterface)( |
| ICreateErrorInfo* This, |
| REFIID riid, |
| void** ppvObject); |
| |
| ULONG (CALLBACK *AddRef)( |
| ICreateErrorInfo* This); |
| |
| ULONG (CALLBACK *Release)( |
| ICreateErrorInfo* This); |
| |
| /*** ICreateErrorInfo methods ***/ |
| HRESULT (CALLBACK *SetGUID)( |
| ICreateErrorInfo* This, |
| REFGUID rguid); |
| |
| HRESULT (CALLBACK *SetSource)( |
| ICreateErrorInfo* This, |
| LPOLESTR szSource); |
| |
| HRESULT (CALLBACK *SetDescription)( |
| ICreateErrorInfo* This, |
| LPOLESTR szDescription); |
| |
| HRESULT (CALLBACK *SetHelpFile)( |
| ICreateErrorInfo* This, |
| LPOLESTR szHelpFile); |
| |
| HRESULT (CALLBACK *SetHelpContext)( |
| ICreateErrorInfo* This, |
| DWORD dwHelpContext); |
| |
| }; |
| |
| #define ICreateErrorInfo_IMETHODS \ |
| IUnknown_IMETHODS \ |
| ICOM_METHOD1 (HRESULT,SetGUID,REFGUID,rguid) \ |
| ICOM_METHOD1 (HRESULT,SetSource,LPOLESTR,szSource) \ |
| ICOM_METHOD1 (HRESULT,SetDescription,LPOLESTR,szDescription) \ |
| ICOM_METHOD1 (HRESULT,SetHelpFile,LPOLESTR,szHelpFile) \ |
| ICOM_METHOD1 (HRESULT,SetHelpContext,DWORD,dwHelpContext) |
| |
| /*** IUnknown methods ***/ |
| #define ICreateErrorInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) |
| #define ICreateErrorInfo_AddRef(p) (p)->lpVtbl->AddRef(p) |
| #define ICreateErrorInfo_Release(p) (p)->lpVtbl->Release(p) |
| /*** ICreateErrorInfo methods ***/ |
| #define ICreateErrorInfo_SetGUID(p,a) (p)->lpVtbl->SetGUID(p,a) |
| #define ICreateErrorInfo_SetSource(p,a) (p)->lpVtbl->SetSource(p,a) |
| #define ICreateErrorInfo_SetDescription(p,a) (p)->lpVtbl->SetDescription(p,a) |
| #define ICreateErrorInfo_SetHelpFile(p,a) (p)->lpVtbl->SetHelpFile(p,a) |
| #define ICreateErrorInfo_SetHelpContext(p,a) (p)->lpVtbl->SetHelpContext(p,a) |
| |
| #endif |
| |
| HRESULT CALLBACK ICreateErrorInfo_SetGUID_Proxy( |
| ICreateErrorInfo* This, |
| REFGUID rguid); |
| void __RPC_STUB ICreateErrorInfo_SetGUID_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateErrorInfo_SetSource_Proxy( |
| ICreateErrorInfo* This, |
| LPOLESTR szSource); |
| void __RPC_STUB ICreateErrorInfo_SetSource_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateErrorInfo_SetDescription_Proxy( |
| ICreateErrorInfo* This, |
| LPOLESTR szDescription); |
| void __RPC_STUB ICreateErrorInfo_SetDescription_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateErrorInfo_SetHelpFile_Proxy( |
| ICreateErrorInfo* This, |
| LPOLESTR szHelpFile); |
| void __RPC_STUB ICreateErrorInfo_SetHelpFile_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateErrorInfo_SetHelpContext_Proxy( |
| ICreateErrorInfo* This, |
| DWORD dwHelpContext); |
| void __RPC_STUB ICreateErrorInfo_SetHelpContext_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| |
| typedef struct ISupportErrorInfo ISupportErrorInfo; |
| typedef ISupportErrorInfo *LPSUPPORTERRORINFO; |
| |
| /***************************************************************************** |
| * ISupportErrorInfo interface |
| */ |
| DEFINE_GUID(IID_ISupportErrorInfo, 0xdf0b3d60, 0x548f, 0x101b, 0x8e,0x65, 0x08,0x00,0x2b,0x2b,0xd1,0x19); |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| struct ISupportErrorInfo: IUnknown { |
| |
| virtual HRESULT CALLBACK InterfaceSupportsErrorInfo( |
| REFIID riid) = 0; |
| |
| } ICOM_COM_INTERFACE_ATTRIBUTE; |
| #else |
| typedef struct ISupportErrorInfoVtbl ISupportErrorInfoVtbl; |
| struct ISupportErrorInfo { |
| const ISupportErrorInfoVtbl* lpVtbl; |
| }; |
| struct ISupportErrorInfoVtbl { |
| ICOM_MSVTABLE_COMPAT_FIELDS |
| |
| /*** IUnknown methods ***/ |
| HRESULT (CALLBACK *QueryInterface)( |
| ISupportErrorInfo* This, |
| REFIID riid, |
| void** ppvObject); |
| |
| ULONG (CALLBACK *AddRef)( |
| ISupportErrorInfo* This); |
| |
| ULONG (CALLBACK *Release)( |
| ISupportErrorInfo* This); |
| |
| /*** ISupportErrorInfo methods ***/ |
| HRESULT (CALLBACK *InterfaceSupportsErrorInfo)( |
| ISupportErrorInfo* This, |
| REFIID riid); |
| |
| }; |
| |
| #define ISupportErrorInfo_IMETHODS \ |
| IUnknown_IMETHODS \ |
| ICOM_METHOD1 (HRESULT,InterfaceSupportsErrorInfo,REFIID,riid) |
| |
| /*** IUnknown methods ***/ |
| #define ISupportErrorInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) |
| #define ISupportErrorInfo_AddRef(p) (p)->lpVtbl->AddRef(p) |
| #define ISupportErrorInfo_Release(p) (p)->lpVtbl->Release(p) |
| /*** ISupportErrorInfo methods ***/ |
| #define ISupportErrorInfo_InterfaceSupportsErrorInfo(p,a) (p)->lpVtbl->InterfaceSupportsErrorInfo(p,a) |
| |
| #endif |
| |
| HRESULT CALLBACK ISupportErrorInfo_InterfaceSupportsErrorInfo_Proxy( |
| ISupportErrorInfo* This, |
| REFIID riid); |
| void __RPC_STUB ISupportErrorInfo_InterfaceSupportsErrorInfo_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| |
| typedef struct ITypeFactory ITypeFactory; |
| /***************************************************************************** |
| * ITypeFactory interface |
| */ |
| DEFINE_GUID(IID_ITypeFactory, 0x0000002e, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| struct ITypeFactory: IUnknown { |
| |
| virtual HRESULT CALLBACK CreateFromTypeInfo( |
| ITypeInfo* pTypeInfo, |
| REFIID riid, |
| IUnknown** ppv) = 0; |
| |
| } ICOM_COM_INTERFACE_ATTRIBUTE; |
| #else |
| typedef struct ITypeFactoryVtbl ITypeFactoryVtbl; |
| struct ITypeFactory { |
| const ITypeFactoryVtbl* lpVtbl; |
| }; |
| struct ITypeFactoryVtbl { |
| ICOM_MSVTABLE_COMPAT_FIELDS |
| |
| /*** IUnknown methods ***/ |
| HRESULT (CALLBACK *QueryInterface)( |
| ITypeFactory* This, |
| REFIID riid, |
| void** ppvObject); |
| |
| ULONG (CALLBACK *AddRef)( |
| ITypeFactory* This); |
| |
| ULONG (CALLBACK *Release)( |
| ITypeFactory* This); |
| |
| /*** ITypeFactory methods ***/ |
| HRESULT (CALLBACK *CreateFromTypeInfo)( |
| ITypeFactory* This, |
| ITypeInfo* pTypeInfo, |
| REFIID riid, |
| IUnknown** ppv); |
| |
| }; |
| |
| #define ITypeFactory_IMETHODS \ |
| IUnknown_IMETHODS \ |
| ICOM_METHOD3 (HRESULT,CreateFromTypeInfo,ITypeInfo*,pTypeInfo,REFIID,riid,IUnknown**,ppv) |
| |
| /*** IUnknown methods ***/ |
| #define ITypeFactory_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) |
| #define ITypeFactory_AddRef(p) (p)->lpVtbl->AddRef(p) |
| #define ITypeFactory_Release(p) (p)->lpVtbl->Release(p) |
| /*** ITypeFactory methods ***/ |
| #define ITypeFactory_CreateFromTypeInfo(p,a,b,c) (p)->lpVtbl->CreateFromTypeInfo(p,a,b,c) |
| |
| #endif |
| |
| HRESULT CALLBACK ITypeFactory_CreateFromTypeInfo_Proxy( |
| ITypeFactory* This, |
| ITypeInfo* pTypeInfo, |
| REFIID riid, |
| IUnknown** ppv); |
| void __RPC_STUB ITypeFactory_CreateFromTypeInfo_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| |
| typedef struct ITypeMarshal ITypeMarshal; |
| /***************************************************************************** |
| * ITypeMarshal interface |
| */ |
| DEFINE_GUID(IID_ITypeMarshal, 0x0000002d, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| struct ITypeMarshal: IUnknown { |
| |
| virtual HRESULT CALLBACK Size( |
| PVOID pvType, |
| DWORD dwDestContext, |
| PVOID pvDestContext, |
| ULONG* pSize) = 0; |
| |
| virtual HRESULT CALLBACK Marshal( |
| PVOID pvType, |
| DWORD dwDestContext, |
| PVOID pvDestContext, |
| ULONG cbBufferLength, |
| BYTE* pBuffer, |
| ULONG* pcbWritten) = 0; |
| |
| virtual HRESULT CALLBACK Unmarshal( |
| PVOID pvType, |
| DWORD dwFlags, |
| ULONG cbBufferLength, |
| BYTE* pBuffer, |
| ULONG* pcbRead) = 0; |
| |
| virtual HRESULT CALLBACK Free( |
| PVOID pvType) = 0; |
| |
| } ICOM_COM_INTERFACE_ATTRIBUTE; |
| #else |
| typedef struct ITypeMarshalVtbl ITypeMarshalVtbl; |
| struct ITypeMarshal { |
| const ITypeMarshalVtbl* lpVtbl; |
| }; |
| struct ITypeMarshalVtbl { |
| ICOM_MSVTABLE_COMPAT_FIELDS |
| |
| /*** IUnknown methods ***/ |
| HRESULT (CALLBACK *QueryInterface)( |
| ITypeMarshal* This, |
| REFIID riid, |
| void** ppvObject); |
| |
| ULONG (CALLBACK *AddRef)( |
| ITypeMarshal* This); |
| |
| ULONG (CALLBACK *Release)( |
| ITypeMarshal* This); |
| |
| /*** ITypeMarshal methods ***/ |
| HRESULT (CALLBACK *Size)( |
| ITypeMarshal* This, |
| PVOID pvType, |
| DWORD dwDestContext, |
| PVOID pvDestContext, |
| ULONG* pSize); |
| |
| HRESULT (CALLBACK *Marshal)( |
| ITypeMarshal* This, |
| PVOID pvType, |
| DWORD dwDestContext, |
| PVOID pvDestContext, |
| ULONG cbBufferLength, |
| BYTE* pBuffer, |
| ULONG* pcbWritten); |
| |
| HRESULT (CALLBACK *Unmarshal)( |
| ITypeMarshal* This, |
| PVOID pvType, |
| DWORD dwFlags, |
| ULONG cbBufferLength, |
| BYTE* pBuffer, |
| ULONG* pcbRead); |
| |
| HRESULT (CALLBACK *Free)( |
| ITypeMarshal* This, |
| PVOID pvType); |
| |
| }; |
| |
| #define ITypeMarshal_IMETHODS \ |
| IUnknown_IMETHODS \ |
| ICOM_METHOD4 (HRESULT,Size,PVOID,pvType,DWORD,dwDestContext,PVOID,pvDestContext,ULONG*,pSize) \ |
| ICOM_METHOD6 (HRESULT,Marshal,PVOID,pvType,DWORD,dwDestContext,PVOID,pvDestContext,ULONG,cbBufferLength,BYTE*,pBuffer,ULONG*,pcbWritten) \ |
| ICOM_METHOD5 (HRESULT,Unmarshal,PVOID,pvType,DWORD,dwFlags,ULONG,cbBufferLength,BYTE*,pBuffer,ULONG*,pcbRead) \ |
| ICOM_METHOD1 (HRESULT,Free,PVOID,pvType) |
| |
| /*** IUnknown methods ***/ |
| #define ITypeMarshal_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) |
| #define ITypeMarshal_AddRef(p) (p)->lpVtbl->AddRef(p) |
| #define ITypeMarshal_Release(p) (p)->lpVtbl->Release(p) |
| /*** ITypeMarshal methods ***/ |
| #define ITypeMarshal_Size(p,a,b,c,d) (p)->lpVtbl->Size(p,a,b,c,d) |
| #define ITypeMarshal_Marshal(p,a,b,c,d,e,f) (p)->lpVtbl->Marshal(p,a,b,c,d,e,f) |
| #define ITypeMarshal_Unmarshal(p,a,b,c,d,e) (p)->lpVtbl->Unmarshal(p,a,b,c,d,e) |
| #define ITypeMarshal_Free(p,a) (p)->lpVtbl->Free(p,a) |
| |
| #endif |
| |
| HRESULT CALLBACK ITypeMarshal_Size_Proxy( |
| ITypeMarshal* This, |
| PVOID pvType, |
| DWORD dwDestContext, |
| PVOID pvDestContext, |
| ULONG* pSize); |
| void __RPC_STUB ITypeMarshal_Size_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeMarshal_Marshal_Proxy( |
| ITypeMarshal* This, |
| PVOID pvType, |
| DWORD dwDestContext, |
| PVOID pvDestContext, |
| ULONG cbBufferLength, |
| BYTE* pBuffer, |
| ULONG* pcbWritten); |
| void __RPC_STUB ITypeMarshal_Marshal_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeMarshal_Unmarshal_Proxy( |
| ITypeMarshal* This, |
| PVOID pvType, |
| DWORD dwFlags, |
| ULONG cbBufferLength, |
| BYTE* pBuffer, |
| ULONG* pcbRead); |
| void __RPC_STUB ITypeMarshal_Unmarshal_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ITypeMarshal_Free_Proxy( |
| ITypeMarshal* This, |
| PVOID pvType); |
| void __RPC_STUB ITypeMarshal_Free_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| |
| typedef IRecordInfo *LPRECORDINFO; |
| |
| /***************************************************************************** |
| * IRecordInfo interface |
| */ |
| DEFINE_GUID(IID_IRecordInfo, 0x0000002f, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| struct IRecordInfo: IUnknown { |
| |
| virtual HRESULT CALLBACK RecordInit( |
| PVOID pvNew) = 0; |
| |
| virtual HRESULT CALLBACK RecordClear( |
| PVOID pvExisting) = 0; |
| |
| virtual HRESULT CALLBACK RecordCopy( |
| PVOID pvExisting, |
| PVOID pvNew) = 0; |
| |
| virtual HRESULT CALLBACK GetGuid( |
| GUID* pguid) = 0; |
| |
| virtual HRESULT CALLBACK GetName( |
| BSTR* pbstrName) = 0; |
| |
| virtual HRESULT CALLBACK GetSize( |
| ULONG* pcbSize) = 0; |
| |
| virtual HRESULT CALLBACK GetTypeInfo( |
| ITypeInfo** ppTypeInfo) = 0; |
| |
| virtual HRESULT CALLBACK GetField( |
| PVOID pvData, |
| LPCOLESTR szFieldName, |
| VARIANT* pvarField) = 0; |
| |
| virtual HRESULT CALLBACK GetFieldNoCopy( |
| PVOID pvData, |
| LPCOLESTR szFieldName, |
| VARIANT* pvarField, |
| PVOID* ppvDataCArray) = 0; |
| |
| virtual HRESULT CALLBACK PutField( |
| ULONG wFlags, |
| PVOID pvData, |
| LPCOLESTR szFieldName, |
| VARIANT* pvarField) = 0; |
| |
| virtual HRESULT CALLBACK PutFieldNoCopy( |
| ULONG wFlags, |
| PVOID pvData, |
| LPCOLESTR szFieldName, |
| VARIANT* pvarField) = 0; |
| |
| virtual HRESULT CALLBACK GetFieldNames( |
| ULONG* pcNames, |
| BSTR* rgBstrNames) = 0; |
| |
| virtual BOOL CALLBACK IsMatchingType( |
| IRecordInfo* pRecordInfo) = 0; |
| |
| virtual PVOID CALLBACK RecordCreate( |
| ) = 0; |
| |
| virtual HRESULT CALLBACK RecordCreateCopy( |
| PVOID pvSource, |
| PVOID* ppvDest) = 0; |
| |
| virtual HRESULT CALLBACK RecordDestroy( |
| PVOID pvRecord) = 0; |
| |
| } ICOM_COM_INTERFACE_ATTRIBUTE; |
| #else |
| typedef struct IRecordInfoVtbl IRecordInfoVtbl; |
| struct IRecordInfo { |
| const IRecordInfoVtbl* lpVtbl; |
| }; |
| struct IRecordInfoVtbl { |
| ICOM_MSVTABLE_COMPAT_FIELDS |
| |
| /*** IUnknown methods ***/ |
| HRESULT (CALLBACK *QueryInterface)( |
| IRecordInfo* This, |
| REFIID riid, |
| void** ppvObject); |
| |
| ULONG (CALLBACK *AddRef)( |
| IRecordInfo* This); |
| |
| ULONG (CALLBACK *Release)( |
| IRecordInfo* This); |
| |
| /*** IRecordInfo methods ***/ |
| HRESULT (CALLBACK *RecordInit)( |
| IRecordInfo* This, |
| PVOID pvNew); |
| |
| HRESULT (CALLBACK *RecordClear)( |
| IRecordInfo* This, |
| PVOID pvExisting); |
| |
| HRESULT (CALLBACK *RecordCopy)( |
| IRecordInfo* This, |
| PVOID pvExisting, |
| PVOID pvNew); |
| |
| HRESULT (CALLBACK *GetGuid)( |
| IRecordInfo* This, |
| GUID* pguid); |
| |
| HRESULT (CALLBACK *GetName)( |
| IRecordInfo* This, |
| BSTR* pbstrName); |
| |
| HRESULT (CALLBACK *GetSize)( |
| IRecordInfo* This, |
| ULONG* pcbSize); |
| |
| HRESULT (CALLBACK *GetTypeInfo)( |
| IRecordInfo* This, |
| ITypeInfo** ppTypeInfo); |
| |
| HRESULT (CALLBACK *GetField)( |
| IRecordInfo* This, |
| PVOID pvData, |
| LPCOLESTR szFieldName, |
| VARIANT* pvarField); |
| |
| HRESULT (CALLBACK *GetFieldNoCopy)( |
| IRecordInfo* This, |
| PVOID pvData, |
| LPCOLESTR szFieldName, |
| VARIANT* pvarField, |
| PVOID* ppvDataCArray); |
| |
| HRESULT (CALLBACK *PutField)( |
| IRecordInfo* This, |
| ULONG wFlags, |
| PVOID pvData, |
| LPCOLESTR szFieldName, |
| VARIANT* pvarField); |
| |
| HRESULT (CALLBACK *PutFieldNoCopy)( |
| IRecordInfo* This, |
| ULONG wFlags, |
| PVOID pvData, |
| LPCOLESTR szFieldName, |
| VARIANT* pvarField); |
| |
| HRESULT (CALLBACK *GetFieldNames)( |
| IRecordInfo* This, |
| ULONG* pcNames, |
| BSTR* rgBstrNames); |
| |
| BOOL (CALLBACK *IsMatchingType)( |
| IRecordInfo* This, |
| IRecordInfo* pRecordInfo); |
| |
| PVOID (CALLBACK *RecordCreate)( |
| IRecordInfo* This); |
| |
| HRESULT (CALLBACK *RecordCreateCopy)( |
| IRecordInfo* This, |
| PVOID pvSource, |
| PVOID* ppvDest); |
| |
| HRESULT (CALLBACK *RecordDestroy)( |
| IRecordInfo* This, |
| PVOID pvRecord); |
| |
| }; |
| |
| #define IRecordInfo_IMETHODS \ |
| IUnknown_IMETHODS \ |
| ICOM_METHOD1 (HRESULT,RecordInit,PVOID,pvNew) \ |
| ICOM_METHOD1 (HRESULT,RecordClear,PVOID,pvExisting) \ |
| ICOM_METHOD2 (HRESULT,RecordCopy,PVOID,pvExisting,PVOID,pvNew) \ |
| ICOM_METHOD1 (HRESULT,GetGuid,GUID*,pguid) \ |
| ICOM_METHOD1 (HRESULT,GetName,BSTR*,pbstrName) \ |
| ICOM_METHOD1 (HRESULT,GetSize,ULONG*,pcbSize) \ |
| ICOM_METHOD1 (HRESULT,GetTypeInfo,ITypeInfo**,ppTypeInfo) \ |
| ICOM_METHOD3 (HRESULT,GetField,PVOID,pvData,LPCOLESTR,szFieldName,VARIANT*,pvarField) \ |
| ICOM_METHOD4 (HRESULT,GetFieldNoCopy,PVOID,pvData,LPCOLESTR,szFieldName,VARIANT*,pvarField,PVOID*,ppvDataCArray) \ |
| ICOM_METHOD4 (HRESULT,PutField,ULONG,wFlags,PVOID,pvData,LPCOLESTR,szFieldName,VARIANT*,pvarField) \ |
| ICOM_METHOD4 (HRESULT,PutFieldNoCopy,ULONG,wFlags,PVOID,pvData,LPCOLESTR,szFieldName,VARIANT*,pvarField) \ |
| ICOM_METHOD2 (HRESULT,GetFieldNames,ULONG*,pcNames,BSTR*,rgBstrNames) \ |
| ICOM_METHOD1 (BOOL,IsMatchingType,IRecordInfo*,pRecordInfo) \ |
| ICOM_METHOD (PVOID,RecordCreate) \ |
| ICOM_METHOD2 (HRESULT,RecordCreateCopy,PVOID,pvSource,PVOID*,ppvDest) \ |
| ICOM_METHOD1 (HRESULT,RecordDestroy,PVOID,pvRecord) |
| |
| /*** IUnknown methods ***/ |
| #define IRecordInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) |
| #define IRecordInfo_AddRef(p) (p)->lpVtbl->AddRef(p) |
| #define IRecordInfo_Release(p) (p)->lpVtbl->Release(p) |
| /*** IRecordInfo methods ***/ |
| #define IRecordInfo_RecordInit(p,a) (p)->lpVtbl->RecordInit(p,a) |
| #define IRecordInfo_RecordClear(p,a) (p)->lpVtbl->RecordClear(p,a) |
| #define IRecordInfo_RecordCopy(p,a,b) (p)->lpVtbl->RecordCopy(p,a,b) |
| #define IRecordInfo_GetGuid(p,a) (p)->lpVtbl->GetGuid(p,a) |
| #define IRecordInfo_GetName(p,a) (p)->lpVtbl->GetName(p,a) |
| #define IRecordInfo_GetSize(p,a) (p)->lpVtbl->GetSize(p,a) |
| #define IRecordInfo_GetTypeInfo(p,a) (p)->lpVtbl->GetTypeInfo(p,a) |
| #define IRecordInfo_GetField(p,a,b,c) (p)->lpVtbl->GetField(p,a,b,c) |
| #define IRecordInfo_GetFieldNoCopy(p,a,b,c,d) (p)->lpVtbl->GetFieldNoCopy(p,a,b,c,d) |
| #define IRecordInfo_PutField(p,a,b,c,d) (p)->lpVtbl->PutField(p,a,b,c,d) |
| #define IRecordInfo_PutFieldNoCopy(p,a,b,c,d) (p)->lpVtbl->PutFieldNoCopy(p,a,b,c,d) |
| #define IRecordInfo_GetFieldNames(p,a,b) (p)->lpVtbl->GetFieldNames(p,a,b) |
| #define IRecordInfo_IsMatchingType(p,a) (p)->lpVtbl->IsMatchingType(p,a) |
| #define IRecordInfo_RecordCreate(p) (p)->lpVtbl->RecordCreate(p) |
| #define IRecordInfo_RecordCreateCopy(p,a,b) (p)->lpVtbl->RecordCreateCopy(p,a,b) |
| #define IRecordInfo_RecordDestroy(p,a) (p)->lpVtbl->RecordDestroy(p,a) |
| |
| #endif |
| |
| HRESULT CALLBACK IRecordInfo_RecordInit_Proxy( |
| IRecordInfo* This, |
| PVOID pvNew); |
| void __RPC_STUB IRecordInfo_RecordInit_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IRecordInfo_RecordClear_Proxy( |
| IRecordInfo* This, |
| PVOID pvExisting); |
| void __RPC_STUB IRecordInfo_RecordClear_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IRecordInfo_RecordCopy_Proxy( |
| IRecordInfo* This, |
| PVOID pvExisting, |
| PVOID pvNew); |
| void __RPC_STUB IRecordInfo_RecordCopy_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IRecordInfo_GetGuid_Proxy( |
| IRecordInfo* This, |
| GUID* pguid); |
| void __RPC_STUB IRecordInfo_GetGuid_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IRecordInfo_GetName_Proxy( |
| IRecordInfo* This, |
| BSTR* pbstrName); |
| void __RPC_STUB IRecordInfo_GetName_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IRecordInfo_GetSize_Proxy( |
| IRecordInfo* This, |
| ULONG* pcbSize); |
| void __RPC_STUB IRecordInfo_GetSize_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IRecordInfo_GetTypeInfo_Proxy( |
| IRecordInfo* This, |
| ITypeInfo** ppTypeInfo); |
| void __RPC_STUB IRecordInfo_GetTypeInfo_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IRecordInfo_GetField_Proxy( |
| IRecordInfo* This, |
| PVOID pvData, |
| LPCOLESTR szFieldName, |
| VARIANT* pvarField); |
| void __RPC_STUB IRecordInfo_GetField_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IRecordInfo_GetFieldNoCopy_Proxy( |
| IRecordInfo* This, |
| PVOID pvData, |
| LPCOLESTR szFieldName, |
| VARIANT* pvarField, |
| PVOID* ppvDataCArray); |
| void __RPC_STUB IRecordInfo_GetFieldNoCopy_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IRecordInfo_PutField_Proxy( |
| IRecordInfo* This, |
| ULONG wFlags, |
| PVOID pvData, |
| LPCOLESTR szFieldName, |
| VARIANT* pvarField); |
| void __RPC_STUB IRecordInfo_PutField_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IRecordInfo_PutFieldNoCopy_Proxy( |
| IRecordInfo* This, |
| ULONG wFlags, |
| PVOID pvData, |
| LPCOLESTR szFieldName, |
| VARIANT* pvarField); |
| void __RPC_STUB IRecordInfo_PutFieldNoCopy_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IRecordInfo_GetFieldNames_Proxy( |
| IRecordInfo* This, |
| ULONG* pcNames, |
| BSTR* rgBstrNames); |
| void __RPC_STUB IRecordInfo_GetFieldNames_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| BOOL CALLBACK IRecordInfo_IsMatchingType_Proxy( |
| IRecordInfo* This, |
| IRecordInfo* pRecordInfo); |
| void __RPC_STUB IRecordInfo_IsMatchingType_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| PVOID CALLBACK IRecordInfo_RecordCreate_Proxy( |
| IRecordInfo* This); |
| void __RPC_STUB IRecordInfo_RecordCreate_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IRecordInfo_RecordCreateCopy_Proxy( |
| IRecordInfo* This, |
| PVOID pvSource, |
| PVOID* ppvDest); |
| void __RPC_STUB IRecordInfo_RecordCreateCopy_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK IRecordInfo_RecordDestroy_Proxy( |
| IRecordInfo* This, |
| PVOID pvRecord); |
| void __RPC_STUB IRecordInfo_RecordDestroy_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| |
| typedef struct ICreateTypeInfo ICreateTypeInfo; |
| typedef ICreateTypeInfo *LPCREATETYPEINFO; |
| |
| /***************************************************************************** |
| * ICreateTypeInfo interface |
| */ |
| DEFINE_GUID(IID_ICreateTypeInfo, 0x00020405, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| struct ICreateTypeInfo: IUnknown { |
| |
| virtual HRESULT CALLBACK SetGuid( |
| REFGUID guid) = 0; |
| |
| virtual HRESULT CALLBACK SetTypeFlags( |
| UINT uTypeFlags) = 0; |
| |
| virtual HRESULT CALLBACK SetDocString( |
| LPOLESTR pStrDoc) = 0; |
| |
| virtual HRESULT CALLBACK SetHelpContext( |
| DWORD dwHelpContext) = 0; |
| |
| virtual HRESULT CALLBACK SetVersion( |
| WORD wMajorVerNum, |
| WORD wMinorVerNum) = 0; |
| |
| virtual HRESULT CALLBACK AddRefTypeInfo( |
| ITypeInfo* pTInfo, |
| HREFTYPE* phRefType) = 0; |
| |
| virtual HRESULT CALLBACK AddFuncDesc( |
| UINT index, |
| FUNCDESC* pFuncDesc) = 0; |
| |
| virtual HRESULT CALLBACK AddImplType( |
| UINT index, |
| HREFTYPE hRefType) = 0; |
| |
| virtual HRESULT CALLBACK SetImplTypeFlags( |
| UINT index, |
| INT implTypeFlags) = 0; |
| |
| virtual HRESULT CALLBACK SetAlignment( |
| WORD cbAlignment) = 0; |
| |
| virtual HRESULT CALLBACK SetSchema( |
| LPOLESTR pStrSchema) = 0; |
| |
| virtual HRESULT CALLBACK AddVarDesc( |
| UINT index, |
| VARDESC* pVarDesc) = 0; |
| |
| virtual HRESULT CALLBACK SetFuncAndParamNames( |
| UINT index, |
| LPOLESTR* rgszNames, |
| UINT cNames) = 0; |
| |
| virtual HRESULT CALLBACK SetVarName( |
| UINT index, |
| LPOLESTR szName) = 0; |
| |
| virtual HRESULT CALLBACK SetTypeDescAlias( |
| TYPEDESC* pTDescAlias) = 0; |
| |
| virtual HRESULT CALLBACK DefineFuncAsDllEntry( |
| UINT index, |
| LPOLESTR szDllName, |
| LPOLESTR szProcName) = 0; |
| |
| virtual HRESULT CALLBACK SetFuncDocString( |
| UINT index, |
| LPOLESTR szDocString) = 0; |
| |
| virtual HRESULT CALLBACK SetVarDocString( |
| UINT index, |
| LPOLESTR szDocString) = 0; |
| |
| virtual HRESULT CALLBACK SetFuncHelpContext( |
| UINT index, |
| DWORD dwHelpContext) = 0; |
| |
| virtual HRESULT CALLBACK SetVarHelpContext( |
| UINT index, |
| DWORD dwHelpContext) = 0; |
| |
| virtual HRESULT CALLBACK SetMops( |
| UINT index, |
| BSTR bstrMops) = 0; |
| |
| virtual HRESULT CALLBACK SetTypeIdldesc( |
| IDLDESC* pIdlDesc) = 0; |
| |
| virtual HRESULT CALLBACK LayOut( |
| ) = 0; |
| |
| } ICOM_COM_INTERFACE_ATTRIBUTE; |
| #else |
| typedef struct ICreateTypeInfoVtbl ICreateTypeInfoVtbl; |
| struct ICreateTypeInfo { |
| const ICreateTypeInfoVtbl* lpVtbl; |
| }; |
| struct ICreateTypeInfoVtbl { |
| ICOM_MSVTABLE_COMPAT_FIELDS |
| |
| /*** IUnknown methods ***/ |
| HRESULT (CALLBACK *QueryInterface)( |
| ICreateTypeInfo* This, |
| REFIID riid, |
| void** ppvObject); |
| |
| ULONG (CALLBACK *AddRef)( |
| ICreateTypeInfo* This); |
| |
| ULONG (CALLBACK *Release)( |
| ICreateTypeInfo* This); |
| |
| /*** ICreateTypeInfo methods ***/ |
| HRESULT (CALLBACK *SetGuid)( |
| ICreateTypeInfo* This, |
| REFGUID guid); |
| |
| HRESULT (CALLBACK *SetTypeFlags)( |
| ICreateTypeInfo* This, |
| UINT uTypeFlags); |
| |
| HRESULT (CALLBACK *SetDocString)( |
| ICreateTypeInfo* This, |
| LPOLESTR pStrDoc); |
| |
| HRESULT (CALLBACK *SetHelpContext)( |
| ICreateTypeInfo* This, |
| DWORD dwHelpContext); |
| |
| HRESULT (CALLBACK *SetVersion)( |
| ICreateTypeInfo* This, |
| WORD wMajorVerNum, |
| WORD wMinorVerNum); |
| |
| HRESULT (CALLBACK *AddRefTypeInfo)( |
| ICreateTypeInfo* This, |
| ITypeInfo* pTInfo, |
| HREFTYPE* phRefType); |
| |
| HRESULT (CALLBACK *AddFuncDesc)( |
| ICreateTypeInfo* This, |
| UINT index, |
| FUNCDESC* pFuncDesc); |
| |
| HRESULT (CALLBACK *AddImplType)( |
| ICreateTypeInfo* This, |
| UINT index, |
| HREFTYPE hRefType); |
| |
| HRESULT (CALLBACK *SetImplTypeFlags)( |
| ICreateTypeInfo* This, |
| UINT index, |
| INT implTypeFlags); |
| |
| HRESULT (CALLBACK *SetAlignment)( |
| ICreateTypeInfo* This, |
| WORD cbAlignment); |
| |
| HRESULT (CALLBACK *SetSchema)( |
| ICreateTypeInfo* This, |
| LPOLESTR pStrSchema); |
| |
| HRESULT (CALLBACK *AddVarDesc)( |
| ICreateTypeInfo* This, |
| UINT index, |
| VARDESC* pVarDesc); |
| |
| HRESULT (CALLBACK *SetFuncAndParamNames)( |
| ICreateTypeInfo* This, |
| UINT index, |
| LPOLESTR* rgszNames, |
| UINT cNames); |
| |
| HRESULT (CALLBACK *SetVarName)( |
| ICreateTypeInfo* This, |
| UINT index, |
| LPOLESTR szName); |
| |
| HRESULT (CALLBACK *SetTypeDescAlias)( |
| ICreateTypeInfo* This, |
| TYPEDESC* pTDescAlias); |
| |
| HRESULT (CALLBACK *DefineFuncAsDllEntry)( |
| ICreateTypeInfo* This, |
| UINT index, |
| LPOLESTR szDllName, |
| LPOLESTR szProcName); |
| |
| HRESULT (CALLBACK *SetFuncDocString)( |
| ICreateTypeInfo* This, |
| UINT index, |
| LPOLESTR szDocString); |
| |
| HRESULT (CALLBACK *SetVarDocString)( |
| ICreateTypeInfo* This, |
| UINT index, |
| LPOLESTR szDocString); |
| |
| HRESULT (CALLBACK *SetFuncHelpContext)( |
| ICreateTypeInfo* This, |
| UINT index, |
| DWORD dwHelpContext); |
| |
| HRESULT (CALLBACK *SetVarHelpContext)( |
| ICreateTypeInfo* This, |
| UINT index, |
| DWORD dwHelpContext); |
| |
| HRESULT (CALLBACK *SetMops)( |
| ICreateTypeInfo* This, |
| UINT index, |
| BSTR bstrMops); |
| |
| HRESULT (CALLBACK *SetTypeIdldesc)( |
| ICreateTypeInfo* This, |
| IDLDESC* pIdlDesc); |
| |
| HRESULT (CALLBACK *LayOut)( |
| ICreateTypeInfo* This); |
| |
| }; |
| |
| #define ICreateTypeInfo_IMETHODS \ |
| IUnknown_IMETHODS \ |
| ICOM_METHOD1 (HRESULT,SetGuid,REFGUID,guid) \ |
| ICOM_METHOD1 (HRESULT,SetTypeFlags,UINT,uTypeFlags) \ |
| ICOM_METHOD1 (HRESULT,SetDocString,LPOLESTR,pStrDoc) \ |
| ICOM_METHOD1 (HRESULT,SetHelpContext,DWORD,dwHelpContext) \ |
| ICOM_METHOD2 (HRESULT,SetVersion,WORD,wMajorVerNum,WORD,wMinorVerNum) \ |
| ICOM_METHOD2 (HRESULT,AddRefTypeInfo,ITypeInfo*,pTInfo,HREFTYPE*,phRefType) \ |
| ICOM_METHOD2 (HRESULT,AddFuncDesc,UINT,index,FUNCDESC*,pFuncDesc) \ |
| ICOM_METHOD2 (HRESULT,AddImplType,UINT,index,HREFTYPE,hRefType) \ |
| ICOM_METHOD2 (HRESULT,SetImplTypeFlags,UINT,index,INT,implTypeFlags) \ |
| ICOM_METHOD1 (HRESULT,SetAlignment,WORD,cbAlignment) \ |
| ICOM_METHOD1 (HRESULT,SetSchema,LPOLESTR,pStrSchema) \ |
| ICOM_METHOD2 (HRESULT,AddVarDesc,UINT,index,VARDESC*,pVarDesc) \ |
| ICOM_METHOD3 (HRESULT,SetFuncAndParamNames,UINT,index,LPOLESTR*,rgszNames,UINT,cNames) \ |
| ICOM_METHOD2 (HRESULT,SetVarName,UINT,index,LPOLESTR,szName) \ |
| ICOM_METHOD1 (HRESULT,SetTypeDescAlias,TYPEDESC*,pTDescAlias) \ |
| ICOM_METHOD3 (HRESULT,DefineFuncAsDllEntry,UINT,index,LPOLESTR,szDllName,LPOLESTR,szProcName) \ |
| ICOM_METHOD2 (HRESULT,SetFuncDocString,UINT,index,LPOLESTR,szDocString) \ |
| ICOM_METHOD2 (HRESULT,SetVarDocString,UINT,index,LPOLESTR,szDocString) \ |
| ICOM_METHOD2 (HRESULT,SetFuncHelpContext,UINT,index,DWORD,dwHelpContext) \ |
| ICOM_METHOD2 (HRESULT,SetVarHelpContext,UINT,index,DWORD,dwHelpContext) \ |
| ICOM_METHOD2 (HRESULT,SetMops,UINT,index,BSTR,bstrMops) \ |
| ICOM_METHOD1 (HRESULT,SetTypeIdldesc,IDLDESC*,pIdlDesc) \ |
| ICOM_METHOD (HRESULT,LayOut) |
| |
| /*** IUnknown methods ***/ |
| #define ICreateTypeInfo_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) |
| #define ICreateTypeInfo_AddRef(p) (p)->lpVtbl->AddRef(p) |
| #define ICreateTypeInfo_Release(p) (p)->lpVtbl->Release(p) |
| /*** ICreateTypeInfo methods ***/ |
| #define ICreateTypeInfo_SetGuid(p,a) (p)->lpVtbl->SetGuid(p,a) |
| #define ICreateTypeInfo_SetTypeFlags(p,a) (p)->lpVtbl->SetTypeFlags(p,a) |
| #define ICreateTypeInfo_SetDocString(p,a) (p)->lpVtbl->SetDocString(p,a) |
| #define ICreateTypeInfo_SetHelpContext(p,a) (p)->lpVtbl->SetHelpContext(p,a) |
| #define ICreateTypeInfo_SetVersion(p,a,b) (p)->lpVtbl->SetVersion(p,a,b) |
| #define ICreateTypeInfo_AddRefTypeInfo(p,a,b) (p)->lpVtbl->AddRefTypeInfo(p,a,b) |
| #define ICreateTypeInfo_AddFuncDesc(p,a,b) (p)->lpVtbl->AddFuncDesc(p,a,b) |
| #define ICreateTypeInfo_AddImplType(p,a,b) (p)->lpVtbl->AddImplType(p,a,b) |
| #define ICreateTypeInfo_SetImplTypeFlags(p,a,b) (p)->lpVtbl->SetImplTypeFlags(p,a,b) |
| #define ICreateTypeInfo_SetAlignment(p,a) (p)->lpVtbl->SetAlignment(p,a) |
| #define ICreateTypeInfo_SetSchema(p,a) (p)->lpVtbl->SetSchema(p,a) |
| #define ICreateTypeInfo_AddVarDesc(p,a,b) (p)->lpVtbl->AddVarDesc(p,a,b) |
| #define ICreateTypeInfo_SetFuncAndParamNames(p,a,b,c) (p)->lpVtbl->SetFuncAndParamNames(p,a,b,c) |
| #define ICreateTypeInfo_SetVarName(p,a,b) (p)->lpVtbl->SetVarName(p,a,b) |
| #define ICreateTypeInfo_SetTypeDescAlias(p,a) (p)->lpVtbl->SetTypeDescAlias(p,a) |
| #define ICreateTypeInfo_DefineFuncAsDllEntry(p,a,b,c) (p)->lpVtbl->DefineFuncAsDllEntry(p,a,b,c) |
| #define ICreateTypeInfo_SetFuncDocString(p,a,b) (p)->lpVtbl->SetFuncDocString(p,a,b) |
| #define ICreateTypeInfo_SetVarDocString(p,a,b) (p)->lpVtbl->SetVarDocString(p,a,b) |
| #define ICreateTypeInfo_SetFuncHelpContext(p,a,b) (p)->lpVtbl->SetFuncHelpContext(p,a,b) |
| #define ICreateTypeInfo_SetVarHelpContext(p,a,b) (p)->lpVtbl->SetVarHelpContext(p,a,b) |
| #define ICreateTypeInfo_SetMops(p,a,b) (p)->lpVtbl->SetMops(p,a,b) |
| #define ICreateTypeInfo_SetTypeIdldesc(p,a) (p)->lpVtbl->SetTypeIdldesc(p,a) |
| #define ICreateTypeInfo_LayOut(p) (p)->lpVtbl->LayOut(p) |
| |
| #endif |
| |
| HRESULT CALLBACK ICreateTypeInfo_SetGuid_Proxy( |
| ICreateTypeInfo* This, |
| REFGUID guid); |
| void __RPC_STUB ICreateTypeInfo_SetGuid_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_SetTypeFlags_Proxy( |
| ICreateTypeInfo* This, |
| UINT uTypeFlags); |
| void __RPC_STUB ICreateTypeInfo_SetTypeFlags_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_SetDocString_Proxy( |
| ICreateTypeInfo* This, |
| LPOLESTR pStrDoc); |
| void __RPC_STUB ICreateTypeInfo_SetDocString_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_SetHelpContext_Proxy( |
| ICreateTypeInfo* This, |
| DWORD dwHelpContext); |
| void __RPC_STUB ICreateTypeInfo_SetHelpContext_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_SetVersion_Proxy( |
| ICreateTypeInfo* This, |
| WORD wMajorVerNum, |
| WORD wMinorVerNum); |
| void __RPC_STUB ICreateTypeInfo_SetVersion_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_AddRefTypeInfo_Proxy( |
| ICreateTypeInfo* This, |
| ITypeInfo* pTInfo, |
| HREFTYPE* phRefType); |
| void __RPC_STUB ICreateTypeInfo_AddRefTypeInfo_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_AddFuncDesc_Proxy( |
| ICreateTypeInfo* This, |
| UINT index, |
| FUNCDESC* pFuncDesc); |
| void __RPC_STUB ICreateTypeInfo_AddFuncDesc_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_AddImplType_Proxy( |
| ICreateTypeInfo* This, |
| UINT index, |
| HREFTYPE hRefType); |
| void __RPC_STUB ICreateTypeInfo_AddImplType_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_SetImplTypeFlags_Proxy( |
| ICreateTypeInfo* This, |
| UINT index, |
| INT implTypeFlags); |
| void __RPC_STUB ICreateTypeInfo_SetImplTypeFlags_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_SetAlignment_Proxy( |
| ICreateTypeInfo* This, |
| WORD cbAlignment); |
| void __RPC_STUB ICreateTypeInfo_SetAlignment_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_SetSchema_Proxy( |
| ICreateTypeInfo* This, |
| LPOLESTR pStrSchema); |
| void __RPC_STUB ICreateTypeInfo_SetSchema_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_AddVarDesc_Proxy( |
| ICreateTypeInfo* This, |
| UINT index, |
| VARDESC* pVarDesc); |
| void __RPC_STUB ICreateTypeInfo_AddVarDesc_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_SetFuncAndParamNames_Proxy( |
| ICreateTypeInfo* This, |
| UINT index, |
| LPOLESTR* rgszNames, |
| UINT cNames); |
| void __RPC_STUB ICreateTypeInfo_SetFuncAndParamNames_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_SetVarName_Proxy( |
| ICreateTypeInfo* This, |
| UINT index, |
| LPOLESTR szName); |
| void __RPC_STUB ICreateTypeInfo_SetVarName_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_SetTypeDescAlias_Proxy( |
| ICreateTypeInfo* This, |
| TYPEDESC* pTDescAlias); |
| void __RPC_STUB ICreateTypeInfo_SetTypeDescAlias_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_DefineFuncAsDllEntry_Proxy( |
| ICreateTypeInfo* This, |
| UINT index, |
| LPOLESTR szDllName, |
| LPOLESTR szProcName); |
| void __RPC_STUB ICreateTypeInfo_DefineFuncAsDllEntry_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_SetFuncDocString_Proxy( |
| ICreateTypeInfo* This, |
| UINT index, |
| LPOLESTR szDocString); |
| void __RPC_STUB ICreateTypeInfo_SetFuncDocString_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_SetVarDocString_Proxy( |
| ICreateTypeInfo* This, |
| UINT index, |
| LPOLESTR szDocString); |
| void __RPC_STUB ICreateTypeInfo_SetVarDocString_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_SetFuncHelpContext_Proxy( |
| ICreateTypeInfo* This, |
| UINT index, |
| DWORD dwHelpContext); |
| void __RPC_STUB ICreateTypeInfo_SetFuncHelpContext_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_SetVarHelpContext_Proxy( |
| ICreateTypeInfo* This, |
| UINT index, |
| DWORD dwHelpContext); |
| void __RPC_STUB ICreateTypeInfo_SetVarHelpContext_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_SetMops_Proxy( |
| ICreateTypeInfo* This, |
| UINT index, |
| BSTR bstrMops); |
| void __RPC_STUB ICreateTypeInfo_SetMops_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_SetTypeIdldesc_Proxy( |
| ICreateTypeInfo* This, |
| IDLDESC* pIdlDesc); |
| void __RPC_STUB ICreateTypeInfo_SetTypeIdldesc_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo_LayOut_Proxy( |
| ICreateTypeInfo* This); |
| void __RPC_STUB ICreateTypeInfo_LayOut_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| |
| typedef struct ICreateTypeInfo2 ICreateTypeInfo2; |
| typedef ICreateTypeInfo2 *LPCREATETYPEINFO2; |
| |
| /***************************************************************************** |
| * ICreateTypeInfo2 interface |
| */ |
| DEFINE_GUID(IID_ICreateTypeInfo2, 0x0002040e, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| struct ICreateTypeInfo2: ICreateTypeInfo { |
| |
| virtual HRESULT CALLBACK DeleteFuncDesc( |
| UINT index) = 0; |
| |
| virtual HRESULT CALLBACK DeleteFuncDescByMemId( |
| MEMBERID memid, |
| INVOKEKIND invKind) = 0; |
| |
| virtual HRESULT CALLBACK DeleteVarDesc( |
| UINT index) = 0; |
| |
| virtual HRESULT CALLBACK DeleteVarDescByMemId( |
| MEMBERID memid) = 0; |
| |
| virtual HRESULT CALLBACK DeleteImplType( |
| UINT index) = 0; |
| |
| virtual HRESULT CALLBACK SetCustData( |
| REFGUID guid, |
| VARIANT* pVarVal) = 0; |
| |
| virtual HRESULT CALLBACK SetFuncCustData( |
| UINT index, |
| REFGUID guid, |
| VARIANT* pVarVal) = 0; |
| |
| virtual HRESULT CALLBACK SetParamCustData( |
| UINT indexFunc, |
| UINT indexParam, |
| REFGUID guid, |
| VARIANT* pVarVal) = 0; |
| |
| virtual HRESULT CALLBACK SetVarCustData( |
| UINT index, |
| REFGUID guid, |
| VARIANT* pVarVal) = 0; |
| |
| virtual HRESULT CALLBACK SetImplTypeCustData( |
| UINT index, |
| REFGUID guid, |
| VARIANT* pVarVal) = 0; |
| |
| virtual HRESULT CALLBACK SetHelpStringContext( |
| ULONG dwHelpStringContext) = 0; |
| |
| virtual HRESULT CALLBACK SetFuncHelpStringContext( |
| UINT index, |
| ULONG dwHelpStringContext) = 0; |
| |
| virtual HRESULT CALLBACK SetVarHelpStringContext( |
| UINT index, |
| ULONG dwHelpStringContext) = 0; |
| |
| virtual HRESULT CALLBACK Invalidate( |
| ) = 0; |
| |
| virtual HRESULT CALLBACK SetName( |
| LPOLESTR szName) = 0; |
| |
| } ICOM_COM_INTERFACE_ATTRIBUTE; |
| #else |
| typedef struct ICreateTypeInfo2Vtbl ICreateTypeInfo2Vtbl; |
| struct ICreateTypeInfo2 { |
| const ICreateTypeInfo2Vtbl* lpVtbl; |
| }; |
| struct ICreateTypeInfo2Vtbl { |
| ICOM_MSVTABLE_COMPAT_FIELDS |
| |
| /*** IUnknown methods ***/ |
| HRESULT (CALLBACK *QueryInterface)( |
| ICreateTypeInfo2* This, |
| REFIID riid, |
| void** ppvObject); |
| |
| ULONG (CALLBACK *AddRef)( |
| ICreateTypeInfo2* This); |
| |
| ULONG (CALLBACK *Release)( |
| ICreateTypeInfo2* This); |
| |
| /*** ICreateTypeInfo methods ***/ |
| HRESULT (CALLBACK *SetGuid)( |
| ICreateTypeInfo2* This, |
| REFGUID guid); |
| |
| HRESULT (CALLBACK *SetTypeFlags)( |
| ICreateTypeInfo2* This, |
| UINT uTypeFlags); |
| |
| HRESULT (CALLBACK *SetDocString)( |
| ICreateTypeInfo2* This, |
| LPOLESTR pStrDoc); |
| |
| HRESULT (CALLBACK *SetHelpContext)( |
| ICreateTypeInfo2* This, |
| DWORD dwHelpContext); |
| |
| HRESULT (CALLBACK *SetVersion)( |
| ICreateTypeInfo2* This, |
| WORD wMajorVerNum, |
| WORD wMinorVerNum); |
| |
| HRESULT (CALLBACK *AddRefTypeInfo)( |
| ICreateTypeInfo2* This, |
| ITypeInfo* pTInfo, |
| HREFTYPE* phRefType); |
| |
| HRESULT (CALLBACK *AddFuncDesc)( |
| ICreateTypeInfo2* This, |
| UINT index, |
| FUNCDESC* pFuncDesc); |
| |
| HRESULT (CALLBACK *AddImplType)( |
| ICreateTypeInfo2* This, |
| UINT index, |
| HREFTYPE hRefType); |
| |
| HRESULT (CALLBACK *SetImplTypeFlags)( |
| ICreateTypeInfo2* This, |
| UINT index, |
| INT implTypeFlags); |
| |
| HRESULT (CALLBACK *SetAlignment)( |
| ICreateTypeInfo2* This, |
| WORD cbAlignment); |
| |
| HRESULT (CALLBACK *SetSchema)( |
| ICreateTypeInfo2* This, |
| LPOLESTR pStrSchema); |
| |
| HRESULT (CALLBACK *AddVarDesc)( |
| ICreateTypeInfo2* This, |
| UINT index, |
| VARDESC* pVarDesc); |
| |
| HRESULT (CALLBACK *SetFuncAndParamNames)( |
| ICreateTypeInfo2* This, |
| UINT index, |
| LPOLESTR* rgszNames, |
| UINT cNames); |
| |
| HRESULT (CALLBACK *SetVarName)( |
| ICreateTypeInfo2* This, |
| UINT index, |
| LPOLESTR szName); |
| |
| HRESULT (CALLBACK *SetTypeDescAlias)( |
| ICreateTypeInfo2* This, |
| TYPEDESC* pTDescAlias); |
| |
| HRESULT (CALLBACK *DefineFuncAsDllEntry)( |
| ICreateTypeInfo2* This, |
| UINT index, |
| LPOLESTR szDllName, |
| LPOLESTR szProcName); |
| |
| HRESULT (CALLBACK *SetFuncDocString)( |
| ICreateTypeInfo2* This, |
| UINT index, |
| LPOLESTR szDocString); |
| |
| HRESULT (CALLBACK *SetVarDocString)( |
| ICreateTypeInfo2* This, |
| UINT index, |
| LPOLESTR szDocString); |
| |
| HRESULT (CALLBACK *SetFuncHelpContext)( |
| ICreateTypeInfo2* This, |
| UINT index, |
| DWORD dwHelpContext); |
| |
| HRESULT (CALLBACK *SetVarHelpContext)( |
| ICreateTypeInfo2* This, |
| UINT index, |
| DWORD dwHelpContext); |
| |
| HRESULT (CALLBACK *SetMops)( |
| ICreateTypeInfo2* This, |
| UINT index, |
| BSTR bstrMops); |
| |
| HRESULT (CALLBACK *SetTypeIdldesc)( |
| ICreateTypeInfo2* This, |
| IDLDESC* pIdlDesc); |
| |
| HRESULT (CALLBACK *LayOut)( |
| ICreateTypeInfo2* This); |
| |
| /*** ICreateTypeInfo2 methods ***/ |
| HRESULT (CALLBACK *DeleteFuncDesc)( |
| ICreateTypeInfo2* This, |
| UINT index); |
| |
| HRESULT (CALLBACK *DeleteFuncDescByMemId)( |
| ICreateTypeInfo2* This, |
| MEMBERID memid, |
| INVOKEKIND invKind); |
| |
| HRESULT (CALLBACK *DeleteVarDesc)( |
| ICreateTypeInfo2* This, |
| UINT index); |
| |
| HRESULT (CALLBACK *DeleteVarDescByMemId)( |
| ICreateTypeInfo2* This, |
| MEMBERID memid); |
| |
| HRESULT (CALLBACK *DeleteImplType)( |
| ICreateTypeInfo2* This, |
| UINT index); |
| |
| HRESULT (CALLBACK *SetCustData)( |
| ICreateTypeInfo2* This, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| |
| HRESULT (CALLBACK *SetFuncCustData)( |
| ICreateTypeInfo2* This, |
| UINT index, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| |
| HRESULT (CALLBACK *SetParamCustData)( |
| ICreateTypeInfo2* This, |
| UINT indexFunc, |
| UINT indexParam, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| |
| HRESULT (CALLBACK *SetVarCustData)( |
| ICreateTypeInfo2* This, |
| UINT index, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| |
| HRESULT (CALLBACK *SetImplTypeCustData)( |
| ICreateTypeInfo2* This, |
| UINT index, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| |
| HRESULT (CALLBACK *SetHelpStringContext)( |
| ICreateTypeInfo2* This, |
| ULONG dwHelpStringContext); |
| |
| HRESULT (CALLBACK *SetFuncHelpStringContext)( |
| ICreateTypeInfo2* This, |
| UINT index, |
| ULONG dwHelpStringContext); |
| |
| HRESULT (CALLBACK *SetVarHelpStringContext)( |
| ICreateTypeInfo2* This, |
| UINT index, |
| ULONG dwHelpStringContext); |
| |
| HRESULT (CALLBACK *Invalidate)( |
| ICreateTypeInfo2* This); |
| |
| HRESULT (CALLBACK *SetName)( |
| ICreateTypeInfo2* This, |
| LPOLESTR szName); |
| |
| }; |
| |
| #define ICreateTypeInfo2_IMETHODS \ |
| ICreateTypeInfo_IMETHODS \ |
| ICOM_METHOD1 (HRESULT,DeleteFuncDesc,UINT,index) \ |
| ICOM_METHOD2 (HRESULT,DeleteFuncDescByMemId,MEMBERID,memid,INVOKEKIND,invKind) \ |
| ICOM_METHOD1 (HRESULT,DeleteVarDesc,UINT,index) \ |
| ICOM_METHOD1 (HRESULT,DeleteVarDescByMemId,MEMBERID,memid) \ |
| ICOM_METHOD1 (HRESULT,DeleteImplType,UINT,index) \ |
| ICOM_METHOD2 (HRESULT,SetCustData,REFGUID,guid,VARIANT*,pVarVal) \ |
| ICOM_METHOD3 (HRESULT,SetFuncCustData,UINT,index,REFGUID,guid,VARIANT*,pVarVal) \ |
| ICOM_METHOD4 (HRESULT,SetParamCustData,UINT,indexFunc,UINT,indexParam,REFGUID,guid,VARIANT*,pVarVal) \ |
| ICOM_METHOD3 (HRESULT,SetVarCustData,UINT,index,REFGUID,guid,VARIANT*,pVarVal) \ |
| ICOM_METHOD3 (HRESULT,SetImplTypeCustData,UINT,index,REFGUID,guid,VARIANT*,pVarVal) \ |
| ICOM_METHOD1 (HRESULT,SetHelpStringContext,ULONG,dwHelpStringContext) \ |
| ICOM_METHOD2 (HRESULT,SetFuncHelpStringContext,UINT,index,ULONG,dwHelpStringContext) \ |
| ICOM_METHOD2 (HRESULT,SetVarHelpStringContext,UINT,index,ULONG,dwHelpStringContext) \ |
| ICOM_METHOD (HRESULT,Invalidate) \ |
| ICOM_METHOD1 (HRESULT,SetName,LPOLESTR,szName) |
| |
| /*** IUnknown methods ***/ |
| #define ICreateTypeInfo2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) |
| #define ICreateTypeInfo2_AddRef(p) (p)->lpVtbl->AddRef(p) |
| #define ICreateTypeInfo2_Release(p) (p)->lpVtbl->Release(p) |
| /*** ICreateTypeInfo methods ***/ |
| #define ICreateTypeInfo2_SetGuid(p,a) (p)->lpVtbl->SetGuid(p,a) |
| #define ICreateTypeInfo2_SetTypeFlags(p,a) (p)->lpVtbl->SetTypeFlags(p,a) |
| #define ICreateTypeInfo2_SetDocString(p,a) (p)->lpVtbl->SetDocString(p,a) |
| #define ICreateTypeInfo2_SetHelpContext(p,a) (p)->lpVtbl->SetHelpContext(p,a) |
| #define ICreateTypeInfo2_SetVersion(p,a,b) (p)->lpVtbl->SetVersion(p,a,b) |
| #define ICreateTypeInfo2_AddRefTypeInfo(p,a,b) (p)->lpVtbl->AddRefTypeInfo(p,a,b) |
| #define ICreateTypeInfo2_AddFuncDesc(p,a,b) (p)->lpVtbl->AddFuncDesc(p,a,b) |
| #define ICreateTypeInfo2_AddImplType(p,a,b) (p)->lpVtbl->AddImplType(p,a,b) |
| #define ICreateTypeInfo2_SetImplTypeFlags(p,a,b) (p)->lpVtbl->SetImplTypeFlags(p,a,b) |
| #define ICreateTypeInfo2_SetAlignment(p,a) (p)->lpVtbl->SetAlignment(p,a) |
| #define ICreateTypeInfo2_SetSchema(p,a) (p)->lpVtbl->SetSchema(p,a) |
| #define ICreateTypeInfo2_AddVarDesc(p,a,b) (p)->lpVtbl->AddVarDesc(p,a,b) |
| #define ICreateTypeInfo2_SetFuncAndParamNames(p,a,b,c) (p)->lpVtbl->SetFuncAndParamNames(p,a,b,c) |
| #define ICreateTypeInfo2_SetVarName(p,a,b) (p)->lpVtbl->SetVarName(p,a,b) |
| #define ICreateTypeInfo2_SetTypeDescAlias(p,a) (p)->lpVtbl->SetTypeDescAlias(p,a) |
| #define ICreateTypeInfo2_DefineFuncAsDllEntry(p,a,b,c) (p)->lpVtbl->DefineFuncAsDllEntry(p,a,b,c) |
| #define ICreateTypeInfo2_SetFuncDocString(p,a,b) (p)->lpVtbl->SetFuncDocString(p,a,b) |
| #define ICreateTypeInfo2_SetVarDocString(p,a,b) (p)->lpVtbl->SetVarDocString(p,a,b) |
| #define ICreateTypeInfo2_SetFuncHelpContext(p,a,b) (p)->lpVtbl->SetFuncHelpContext(p,a,b) |
| #define ICreateTypeInfo2_SetVarHelpContext(p,a,b) (p)->lpVtbl->SetVarHelpContext(p,a,b) |
| #define ICreateTypeInfo2_SetMops(p,a,b) (p)->lpVtbl->SetMops(p,a,b) |
| #define ICreateTypeInfo2_SetTypeIdldesc(p,a) (p)->lpVtbl->SetTypeIdldesc(p,a) |
| #define ICreateTypeInfo2_LayOut(p) (p)->lpVtbl->LayOut(p) |
| /*** ICreateTypeInfo2 methods ***/ |
| #define ICreateTypeInfo2_DeleteFuncDesc(p,a) (p)->lpVtbl->DeleteFuncDesc(p,a) |
| #define ICreateTypeInfo2_DeleteFuncDescByMemId(p,a,b) (p)->lpVtbl->DeleteFuncDescByMemId(p,a,b) |
| #define ICreateTypeInfo2_DeleteVarDesc(p,a) (p)->lpVtbl->DeleteVarDesc(p,a) |
| #define ICreateTypeInfo2_DeleteVarDescByMemId(p,a) (p)->lpVtbl->DeleteVarDescByMemId(p,a) |
| #define ICreateTypeInfo2_DeleteImplType(p,a) (p)->lpVtbl->DeleteImplType(p,a) |
| #define ICreateTypeInfo2_SetCustData(p,a,b) (p)->lpVtbl->SetCustData(p,a,b) |
| #define ICreateTypeInfo2_SetFuncCustData(p,a,b,c) (p)->lpVtbl->SetFuncCustData(p,a,b,c) |
| #define ICreateTypeInfo2_SetParamCustData(p,a,b,c,d) (p)->lpVtbl->SetParamCustData(p,a,b,c,d) |
| #define ICreateTypeInfo2_SetVarCustData(p,a,b,c) (p)->lpVtbl->SetVarCustData(p,a,b,c) |
| #define ICreateTypeInfo2_SetImplTypeCustData(p,a,b,c) (p)->lpVtbl->SetImplTypeCustData(p,a,b,c) |
| #define ICreateTypeInfo2_SetHelpStringContext(p,a) (p)->lpVtbl->SetHelpStringContext(p,a) |
| #define ICreateTypeInfo2_SetFuncHelpStringContext(p,a,b) (p)->lpVtbl->SetFuncHelpStringContext(p,a,b) |
| #define ICreateTypeInfo2_SetVarHelpStringContext(p,a,b) (p)->lpVtbl->SetVarHelpStringContext(p,a,b) |
| #define ICreateTypeInfo2_Invalidate(p) (p)->lpVtbl->Invalidate(p) |
| #define ICreateTypeInfo2_SetName(p,a) (p)->lpVtbl->SetName(p,a) |
| |
| #endif |
| |
| HRESULT CALLBACK ICreateTypeInfo2_DeleteFuncDesc_Proxy( |
| ICreateTypeInfo2* This, |
| UINT index); |
| void __RPC_STUB ICreateTypeInfo2_DeleteFuncDesc_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo2_DeleteFuncDescByMemId_Proxy( |
| ICreateTypeInfo2* This, |
| MEMBERID memid, |
| INVOKEKIND invKind); |
| void __RPC_STUB ICreateTypeInfo2_DeleteFuncDescByMemId_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo2_DeleteVarDesc_Proxy( |
| ICreateTypeInfo2* This, |
| UINT index); |
| void __RPC_STUB ICreateTypeInfo2_DeleteVarDesc_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo2_DeleteVarDescByMemId_Proxy( |
| ICreateTypeInfo2* This, |
| MEMBERID memid); |
| void __RPC_STUB ICreateTypeInfo2_DeleteVarDescByMemId_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo2_DeleteImplType_Proxy( |
| ICreateTypeInfo2* This, |
| UINT index); |
| void __RPC_STUB ICreateTypeInfo2_DeleteImplType_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo2_SetCustData_Proxy( |
| ICreateTypeInfo2* This, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| void __RPC_STUB ICreateTypeInfo2_SetCustData_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo2_SetFuncCustData_Proxy( |
| ICreateTypeInfo2* This, |
| UINT index, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| void __RPC_STUB ICreateTypeInfo2_SetFuncCustData_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo2_SetParamCustData_Proxy( |
| ICreateTypeInfo2* This, |
| UINT indexFunc, |
| UINT indexParam, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| void __RPC_STUB ICreateTypeInfo2_SetParamCustData_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo2_SetVarCustData_Proxy( |
| ICreateTypeInfo2* This, |
| UINT index, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| void __RPC_STUB ICreateTypeInfo2_SetVarCustData_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo2_SetImplTypeCustData_Proxy( |
| ICreateTypeInfo2* This, |
| UINT index, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| void __RPC_STUB ICreateTypeInfo2_SetImplTypeCustData_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo2_SetHelpStringContext_Proxy( |
| ICreateTypeInfo2* This, |
| ULONG dwHelpStringContext); |
| void __RPC_STUB ICreateTypeInfo2_SetHelpStringContext_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo2_SetFuncHelpStringContext_Proxy( |
| ICreateTypeInfo2* This, |
| UINT index, |
| ULONG dwHelpStringContext); |
| void __RPC_STUB ICreateTypeInfo2_SetFuncHelpStringContext_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo2_SetVarHelpStringContext_Proxy( |
| ICreateTypeInfo2* This, |
| UINT index, |
| ULONG dwHelpStringContext); |
| void __RPC_STUB ICreateTypeInfo2_SetVarHelpStringContext_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo2_Invalidate_Proxy( |
| ICreateTypeInfo2* This); |
| void __RPC_STUB ICreateTypeInfo2_Invalidate_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeInfo2_SetName_Proxy( |
| ICreateTypeInfo2* This, |
| LPOLESTR szName); |
| void __RPC_STUB ICreateTypeInfo2_SetName_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| |
| typedef struct ICreateTypeLib ICreateTypeLib; |
| typedef ICreateTypeLib *LPCREATETYPELIB; |
| |
| /***************************************************************************** |
| * ICreateTypeLib interface |
| */ |
| DEFINE_GUID(IID_ICreateTypeLib, 0x00020406, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| struct ICreateTypeLib: IUnknown { |
| |
| virtual HRESULT CALLBACK CreateTypeInfo( |
| LPOLESTR szName, |
| TYPEKIND tkind, |
| ICreateTypeInfo** ppCTInfo) = 0; |
| |
| virtual HRESULT CALLBACK SetName( |
| LPOLESTR szName) = 0; |
| |
| virtual HRESULT CALLBACK SetVersion( |
| WORD wMajorVerNum, |
| WORD wMinorVerNum) = 0; |
| |
| virtual HRESULT CALLBACK SetGuid( |
| REFGUID guid) = 0; |
| |
| virtual HRESULT CALLBACK SetDocString( |
| LPOLESTR szDoc) = 0; |
| |
| virtual HRESULT CALLBACK SetHelpFileName( |
| LPOLESTR szHelpFileName) = 0; |
| |
| virtual HRESULT CALLBACK SetHelpContext( |
| DWORD dwHelpContext) = 0; |
| |
| virtual HRESULT CALLBACK SetLcid( |
| LCID lcid) = 0; |
| |
| virtual HRESULT CALLBACK SetLibFlags( |
| UINT uLibFlags) = 0; |
| |
| virtual HRESULT CALLBACK SaveAllChanges( |
| ) = 0; |
| |
| } ICOM_COM_INTERFACE_ATTRIBUTE; |
| #else |
| typedef struct ICreateTypeLibVtbl ICreateTypeLibVtbl; |
| struct ICreateTypeLib { |
| const ICreateTypeLibVtbl* lpVtbl; |
| }; |
| struct ICreateTypeLibVtbl { |
| ICOM_MSVTABLE_COMPAT_FIELDS |
| |
| /*** IUnknown methods ***/ |
| HRESULT (CALLBACK *QueryInterface)( |
| ICreateTypeLib* This, |
| REFIID riid, |
| void** ppvObject); |
| |
| ULONG (CALLBACK *AddRef)( |
| ICreateTypeLib* This); |
| |
| ULONG (CALLBACK *Release)( |
| ICreateTypeLib* This); |
| |
| /*** ICreateTypeLib methods ***/ |
| HRESULT (CALLBACK *CreateTypeInfo)( |
| ICreateTypeLib* This, |
| LPOLESTR szName, |
| TYPEKIND tkind, |
| ICreateTypeInfo** ppCTInfo); |
| |
| HRESULT (CALLBACK *SetName)( |
| ICreateTypeLib* This, |
| LPOLESTR szName); |
| |
| HRESULT (CALLBACK *SetVersion)( |
| ICreateTypeLib* This, |
| WORD wMajorVerNum, |
| WORD wMinorVerNum); |
| |
| HRESULT (CALLBACK *SetGuid)( |
| ICreateTypeLib* This, |
| REFGUID guid); |
| |
| HRESULT (CALLBACK *SetDocString)( |
| ICreateTypeLib* This, |
| LPOLESTR szDoc); |
| |
| HRESULT (CALLBACK *SetHelpFileName)( |
| ICreateTypeLib* This, |
| LPOLESTR szHelpFileName); |
| |
| HRESULT (CALLBACK *SetHelpContext)( |
| ICreateTypeLib* This, |
| DWORD dwHelpContext); |
| |
| HRESULT (CALLBACK *SetLcid)( |
| ICreateTypeLib* This, |
| LCID lcid); |
| |
| HRESULT (CALLBACK *SetLibFlags)( |
| ICreateTypeLib* This, |
| UINT uLibFlags); |
| |
| HRESULT (CALLBACK *SaveAllChanges)( |
| ICreateTypeLib* This); |
| |
| }; |
| |
| #define ICreateTypeLib_IMETHODS \ |
| IUnknown_IMETHODS \ |
| ICOM_METHOD3 (HRESULT,CreateTypeInfo,LPOLESTR,szName,TYPEKIND,tkind,ICreateTypeInfo**,ppCTInfo) \ |
| ICOM_METHOD1 (HRESULT,SetName,LPOLESTR,szName) \ |
| ICOM_METHOD2 (HRESULT,SetVersion,WORD,wMajorVerNum,WORD,wMinorVerNum) \ |
| ICOM_METHOD1 (HRESULT,SetGuid,REFGUID,guid) \ |
| ICOM_METHOD1 (HRESULT,SetDocString,LPOLESTR,szDoc) \ |
| ICOM_METHOD1 (HRESULT,SetHelpFileName,LPOLESTR,szHelpFileName) \ |
| ICOM_METHOD1 (HRESULT,SetHelpContext,DWORD,dwHelpContext) \ |
| ICOM_METHOD1 (HRESULT,SetLcid,LCID,lcid) \ |
| ICOM_METHOD1 (HRESULT,SetLibFlags,UINT,uLibFlags) \ |
| ICOM_METHOD (HRESULT,SaveAllChanges) |
| |
| /*** IUnknown methods ***/ |
| #define ICreateTypeLib_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) |
| #define ICreateTypeLib_AddRef(p) (p)->lpVtbl->AddRef(p) |
| #define ICreateTypeLib_Release(p) (p)->lpVtbl->Release(p) |
| /*** ICreateTypeLib methods ***/ |
| #define ICreateTypeLib_CreateTypeInfo(p,a,b,c) (p)->lpVtbl->CreateTypeInfo(p,a,b,c) |
| #define ICreateTypeLib_SetName(p,a) (p)->lpVtbl->SetName(p,a) |
| #define ICreateTypeLib_SetVersion(p,a,b) (p)->lpVtbl->SetVersion(p,a,b) |
| #define ICreateTypeLib_SetGuid(p,a) (p)->lpVtbl->SetGuid(p,a) |
| #define ICreateTypeLib_SetDocString(p,a) (p)->lpVtbl->SetDocString(p,a) |
| #define ICreateTypeLib_SetHelpFileName(p,a) (p)->lpVtbl->SetHelpFileName(p,a) |
| #define ICreateTypeLib_SetHelpContext(p,a) (p)->lpVtbl->SetHelpContext(p,a) |
| #define ICreateTypeLib_SetLcid(p,a) (p)->lpVtbl->SetLcid(p,a) |
| #define ICreateTypeLib_SetLibFlags(p,a) (p)->lpVtbl->SetLibFlags(p,a) |
| #define ICreateTypeLib_SaveAllChanges(p) (p)->lpVtbl->SaveAllChanges(p) |
| |
| #endif |
| |
| HRESULT CALLBACK ICreateTypeLib_CreateTypeInfo_Proxy( |
| ICreateTypeLib* This, |
| LPOLESTR szName, |
| TYPEKIND tkind, |
| ICreateTypeInfo** ppCTInfo); |
| void __RPC_STUB ICreateTypeLib_CreateTypeInfo_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeLib_SetName_Proxy( |
| ICreateTypeLib* This, |
| LPOLESTR szName); |
| void __RPC_STUB ICreateTypeLib_SetName_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeLib_SetVersion_Proxy( |
| ICreateTypeLib* This, |
| WORD wMajorVerNum, |
| WORD wMinorVerNum); |
| void __RPC_STUB ICreateTypeLib_SetVersion_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeLib_SetGuid_Proxy( |
| ICreateTypeLib* This, |
| REFGUID guid); |
| void __RPC_STUB ICreateTypeLib_SetGuid_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeLib_SetDocString_Proxy( |
| ICreateTypeLib* This, |
| LPOLESTR szDoc); |
| void __RPC_STUB ICreateTypeLib_SetDocString_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeLib_SetHelpFileName_Proxy( |
| ICreateTypeLib* This, |
| LPOLESTR szHelpFileName); |
| void __RPC_STUB ICreateTypeLib_SetHelpFileName_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeLib_SetHelpContext_Proxy( |
| ICreateTypeLib* This, |
| DWORD dwHelpContext); |
| void __RPC_STUB ICreateTypeLib_SetHelpContext_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeLib_SetLcid_Proxy( |
| ICreateTypeLib* This, |
| LCID lcid); |
| void __RPC_STUB ICreateTypeLib_SetLcid_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeLib_SetLibFlags_Proxy( |
| ICreateTypeLib* This, |
| UINT uLibFlags); |
| void __RPC_STUB ICreateTypeLib_SetLibFlags_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeLib_SaveAllChanges_Proxy( |
| ICreateTypeLib* This); |
| void __RPC_STUB ICreateTypeLib_SaveAllChanges_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| |
| typedef struct ICreateTypeLib2 ICreateTypeLib2; |
| typedef ICreateTypeLib2 *LPCREATETYPELIB2; |
| |
| /***************************************************************************** |
| * ICreateTypeLib2 interface |
| */ |
| DEFINE_GUID(IID_ICreateTypeLib2, 0x0002040f, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); |
| #if defined(__cplusplus) && !defined(CINTERFACE) |
| struct ICreateTypeLib2: ICreateTypeLib { |
| |
| virtual HRESULT CALLBACK DeleteTypeInfo( |
| LPOLESTR szName) = 0; |
| |
| virtual HRESULT CALLBACK SetCustData( |
| REFGUID guid, |
| VARIANT* pVarVal) = 0; |
| |
| virtual HRESULT CALLBACK SetHelpStringContext( |
| ULONG dwHelpStringContext) = 0; |
| |
| virtual HRESULT CALLBACK SetHelpStringDll( |
| LPOLESTR szFileName) = 0; |
| |
| } ICOM_COM_INTERFACE_ATTRIBUTE; |
| #else |
| typedef struct ICreateTypeLib2Vtbl ICreateTypeLib2Vtbl; |
| struct ICreateTypeLib2 { |
| const ICreateTypeLib2Vtbl* lpVtbl; |
| }; |
| struct ICreateTypeLib2Vtbl { |
| ICOM_MSVTABLE_COMPAT_FIELDS |
| |
| /*** IUnknown methods ***/ |
| HRESULT (CALLBACK *QueryInterface)( |
| ICreateTypeLib2* This, |
| REFIID riid, |
| void** ppvObject); |
| |
| ULONG (CALLBACK *AddRef)( |
| ICreateTypeLib2* This); |
| |
| ULONG (CALLBACK *Release)( |
| ICreateTypeLib2* This); |
| |
| /*** ICreateTypeLib methods ***/ |
| HRESULT (CALLBACK *CreateTypeInfo)( |
| ICreateTypeLib2* This, |
| LPOLESTR szName, |
| TYPEKIND tkind, |
| ICreateTypeInfo** ppCTInfo); |
| |
| HRESULT (CALLBACK *SetName)( |
| ICreateTypeLib2* This, |
| LPOLESTR szName); |
| |
| HRESULT (CALLBACK *SetVersion)( |
| ICreateTypeLib2* This, |
| WORD wMajorVerNum, |
| WORD wMinorVerNum); |
| |
| HRESULT (CALLBACK *SetGuid)( |
| ICreateTypeLib2* This, |
| REFGUID guid); |
| |
| HRESULT (CALLBACK *SetDocString)( |
| ICreateTypeLib2* This, |
| LPOLESTR szDoc); |
| |
| HRESULT (CALLBACK *SetHelpFileName)( |
| ICreateTypeLib2* This, |
| LPOLESTR szHelpFileName); |
| |
| HRESULT (CALLBACK *SetHelpContext)( |
| ICreateTypeLib2* This, |
| DWORD dwHelpContext); |
| |
| HRESULT (CALLBACK *SetLcid)( |
| ICreateTypeLib2* This, |
| LCID lcid); |
| |
| HRESULT (CALLBACK *SetLibFlags)( |
| ICreateTypeLib2* This, |
| UINT uLibFlags); |
| |
| HRESULT (CALLBACK *SaveAllChanges)( |
| ICreateTypeLib2* This); |
| |
| /*** ICreateTypeLib2 methods ***/ |
| HRESULT (CALLBACK *DeleteTypeInfo)( |
| ICreateTypeLib2* This, |
| LPOLESTR szName); |
| |
| HRESULT (CALLBACK *SetCustData)( |
| ICreateTypeLib2* This, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| |
| HRESULT (CALLBACK *SetHelpStringContext)( |
| ICreateTypeLib2* This, |
| ULONG dwHelpStringContext); |
| |
| HRESULT (CALLBACK *SetHelpStringDll)( |
| ICreateTypeLib2* This, |
| LPOLESTR szFileName); |
| |
| }; |
| |
| #define ICreateTypeLib2_IMETHODS \ |
| ICreateTypeLib_IMETHODS \ |
| ICOM_METHOD1 (HRESULT,DeleteTypeInfo,LPOLESTR,szName) \ |
| ICOM_METHOD2 (HRESULT,SetCustData,REFGUID,guid,VARIANT*,pVarVal) \ |
| ICOM_METHOD1 (HRESULT,SetHelpStringContext,ULONG,dwHelpStringContext) \ |
| ICOM_METHOD1 (HRESULT,SetHelpStringDll,LPOLESTR,szFileName) |
| |
| /*** IUnknown methods ***/ |
| #define ICreateTypeLib2_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) |
| #define ICreateTypeLib2_AddRef(p) (p)->lpVtbl->AddRef(p) |
| #define ICreateTypeLib2_Release(p) (p)->lpVtbl->Release(p) |
| /*** ICreateTypeLib methods ***/ |
| #define ICreateTypeLib2_CreateTypeInfo(p,a,b,c) (p)->lpVtbl->CreateTypeInfo(p,a,b,c) |
| #define ICreateTypeLib2_SetName(p,a) (p)->lpVtbl->SetName(p,a) |
| #define ICreateTypeLib2_SetVersion(p,a,b) (p)->lpVtbl->SetVersion(p,a,b) |
| #define ICreateTypeLib2_SetGuid(p,a) (p)->lpVtbl->SetGuid(p,a) |
| #define ICreateTypeLib2_SetDocString(p,a) (p)->lpVtbl->SetDocString(p,a) |
| #define ICreateTypeLib2_SetHelpFileName(p,a) (p)->lpVtbl->SetHelpFileName(p,a) |
| #define ICreateTypeLib2_SetHelpContext(p,a) (p)->lpVtbl->SetHelpContext(p,a) |
| #define ICreateTypeLib2_SetLcid(p,a) (p)->lpVtbl->SetLcid(p,a) |
| #define ICreateTypeLib2_SetLibFlags(p,a) (p)->lpVtbl->SetLibFlags(p,a) |
| #define ICreateTypeLib2_SaveAllChanges(p) (p)->lpVtbl->SaveAllChanges(p) |
| /*** ICreateTypeLib2 methods ***/ |
| #define ICreateTypeLib2_DeleteTypeInfo(p,a) (p)->lpVtbl->DeleteTypeInfo(p,a) |
| #define ICreateTypeLib2_SetCustData(p,a,b) (p)->lpVtbl->SetCustData(p,a,b) |
| #define ICreateTypeLib2_SetHelpStringContext(p,a) (p)->lpVtbl->SetHelpStringContext(p,a) |
| #define ICreateTypeLib2_SetHelpStringDll(p,a) (p)->lpVtbl->SetHelpStringDll(p,a) |
| |
| #endif |
| |
| HRESULT CALLBACK ICreateTypeLib2_DeleteTypeInfo_Proxy( |
| ICreateTypeLib2* This, |
| LPOLESTR szName); |
| void __RPC_STUB ICreateTypeLib2_DeleteTypeInfo_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeLib2_SetCustData_Proxy( |
| ICreateTypeLib2* This, |
| REFGUID guid, |
| VARIANT* pVarVal); |
| void __RPC_STUB ICreateTypeLib2_SetCustData_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeLib2_SetHelpStringContext_Proxy( |
| ICreateTypeLib2* This, |
| ULONG dwHelpStringContext); |
| void __RPC_STUB ICreateTypeLib2_SetHelpStringContext_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| HRESULT CALLBACK ICreateTypeLib2_SetHelpStringDll_Proxy( |
| ICreateTypeLib2* This, |
| LPOLESTR szFileName); |
| void __RPC_STUB ICreateTypeLib2_SetHelpStringDll_Stub( |
| struct IRpcStubBuffer* This, |
| struct IRpcChannelBuffer* pRpcChannelBuffer, |
| PRPC_MESSAGE pRpcMessage, |
| DWORD* pdwStubPhase); |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| #endif /* __WIDL_OAIDL_H */ |