/*** Autogenerated by WIDL 6.4 from include/oaidl.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __oaidl_h__ #define __oaidl_h__ /* Forward declarations */ #ifndef __ICreateTypeInfo_FWD_DEFINED__ #define __ICreateTypeInfo_FWD_DEFINED__ typedef interface ICreateTypeInfo ICreateTypeInfo; #ifdef __cplusplus interface ICreateTypeInfo; #endif /* __cplusplus */ #endif #ifndef __ICreateTypeInfo2_FWD_DEFINED__ #define __ICreateTypeInfo2_FWD_DEFINED__ typedef interface ICreateTypeInfo2 ICreateTypeInfo2; #ifdef __cplusplus interface ICreateTypeInfo2; #endif /* __cplusplus */ #endif #ifndef __ICreateTypeLib_FWD_DEFINED__ #define __ICreateTypeLib_FWD_DEFINED__ typedef interface ICreateTypeLib ICreateTypeLib; #ifdef __cplusplus interface ICreateTypeLib; #endif /* __cplusplus */ #endif #ifndef __ICreateTypeLib2_FWD_DEFINED__ #define __ICreateTypeLib2_FWD_DEFINED__ typedef interface ICreateTypeLib2 ICreateTypeLib2; #ifdef __cplusplus interface ICreateTypeLib2; #endif /* __cplusplus */ #endif #ifndef __IDispatch_FWD_DEFINED__ #define __IDispatch_FWD_DEFINED__ typedef interface IDispatch IDispatch; #ifdef __cplusplus interface IDispatch; #endif /* __cplusplus */ #endif #ifndef __IEnumVARIANT_FWD_DEFINED__ #define __IEnumVARIANT_FWD_DEFINED__ typedef interface IEnumVARIANT IEnumVARIANT; #ifdef __cplusplus interface IEnumVARIANT; #endif /* __cplusplus */ #endif #ifndef __ITypeComp_FWD_DEFINED__ #define __ITypeComp_FWD_DEFINED__ typedef interface ITypeComp ITypeComp; #ifdef __cplusplus interface ITypeComp; #endif /* __cplusplus */ #endif #ifndef __ITypeInfo_FWD_DEFINED__ #define __ITypeInfo_FWD_DEFINED__ typedef interface ITypeInfo ITypeInfo; #ifdef __cplusplus interface ITypeInfo; #endif /* __cplusplus */ #endif #ifndef __ITypeInfo2_FWD_DEFINED__ #define __ITypeInfo2_FWD_DEFINED__ typedef interface ITypeInfo2 ITypeInfo2; #ifdef __cplusplus interface ITypeInfo2; #endif /* __cplusplus */ #endif #ifndef __ITypeLib_FWD_DEFINED__ #define __ITypeLib_FWD_DEFINED__ typedef interface ITypeLib ITypeLib; #ifdef __cplusplus interface ITypeLib; #endif /* __cplusplus */ #endif #ifndef __ITypeLib2_FWD_DEFINED__ #define __ITypeLib2_FWD_DEFINED__ typedef interface ITypeLib2 ITypeLib2; #ifdef __cplusplus interface ITypeLib2; #endif /* __cplusplus */ #endif #ifndef __ITypeChangeEvents_FWD_DEFINED__ #define __ITypeChangeEvents_FWD_DEFINED__ typedef interface ITypeChangeEvents ITypeChangeEvents; #ifdef __cplusplus interface ITypeChangeEvents; #endif /* __cplusplus */ #endif #ifndef __IErrorInfo_FWD_DEFINED__ #define __IErrorInfo_FWD_DEFINED__ typedef interface IErrorInfo IErrorInfo; #ifdef __cplusplus interface IErrorInfo; #endif /* __cplusplus */ #endif #ifndef __ICreateErrorInfo_FWD_DEFINED__ #define __ICreateErrorInfo_FWD_DEFINED__ typedef interface ICreateErrorInfo ICreateErrorInfo; #ifdef __cplusplus interface ICreateErrorInfo; #endif /* __cplusplus */ #endif #ifndef __ISupportErrorInfo_FWD_DEFINED__ #define __ISupportErrorInfo_FWD_DEFINED__ typedef interface ISupportErrorInfo ISupportErrorInfo; #ifdef __cplusplus interface ISupportErrorInfo; #endif /* __cplusplus */ #endif #ifndef __ITypeFactory_FWD_DEFINED__ #define __ITypeFactory_FWD_DEFINED__ typedef interface ITypeFactory ITypeFactory; #ifdef __cplusplus interface ITypeFactory; #endif /* __cplusplus */ #endif #ifndef __ITypeMarshal_FWD_DEFINED__ #define __ITypeMarshal_FWD_DEFINED__ typedef interface ITypeMarshal ITypeMarshal; #ifdef __cplusplus interface ITypeMarshal; #endif /* __cplusplus */ #endif #ifndef __IRecordInfo_FWD_DEFINED__ #define __IRecordInfo_FWD_DEFINED__ typedef interface IRecordInfo IRecordInfo; #ifdef __cplusplus interface IRecordInfo; #endif /* __cplusplus */ #endif #ifndef __IErrorLog_FWD_DEFINED__ #define __IErrorLog_FWD_DEFINED__ typedef interface IErrorLog IErrorLog; #ifdef __cplusplus interface IErrorLog; #endif /* __cplusplus */ #endif #ifndef __IPropertyBag_FWD_DEFINED__ #define __IPropertyBag_FWD_DEFINED__ typedef interface IPropertyBag IPropertyBag; #ifdef __cplusplus interface IPropertyBag; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #ifdef __cplusplus extern "C" { #endif /** * This file is part of the mingw-w64 runtime package. * No warranty is given; refer to the file DISCLAIMER within this package. */ #include #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) #ifndef __ICreateTypeInfo_FWD_DEFINED__ #define __ICreateTypeInfo_FWD_DEFINED__ typedef interface ICreateTypeInfo ICreateTypeInfo; #ifdef __cplusplus interface ICreateTypeInfo; #endif /* __cplusplus */ #endif #ifndef __ICreateTypeInfo2_FWD_DEFINED__ #define __ICreateTypeInfo2_FWD_DEFINED__ typedef interface ICreateTypeInfo2 ICreateTypeInfo2; #ifdef __cplusplus interface ICreateTypeInfo2; #endif /* __cplusplus */ #endif #ifndef __ICreateTypeLib_FWD_DEFINED__ #define __ICreateTypeLib_FWD_DEFINED__ typedef interface ICreateTypeLib ICreateTypeLib; #ifdef __cplusplus interface ICreateTypeLib; #endif /* __cplusplus */ #endif #ifndef __ICreateTypeLib2_FWD_DEFINED__ #define __ICreateTypeLib2_FWD_DEFINED__ typedef interface ICreateTypeLib2 ICreateTypeLib2; #ifdef __cplusplus interface ICreateTypeLib2; #endif /* __cplusplus */ #endif #endif #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) #ifndef __IDispatch_FWD_DEFINED__ #define __IDispatch_FWD_DEFINED__ typedef interface IDispatch IDispatch; #ifdef __cplusplus interface IDispatch; #endif /* __cplusplus */ #endif #ifndef __IEnumVARIANT_FWD_DEFINED__ #define __IEnumVARIANT_FWD_DEFINED__ typedef interface IEnumVARIANT IEnumVARIANT; #ifdef __cplusplus interface IEnumVARIANT; #endif /* __cplusplus */ #endif #ifndef __ITypeComp_FWD_DEFINED__ #define __ITypeComp_FWD_DEFINED__ typedef interface ITypeComp ITypeComp; #ifdef __cplusplus interface ITypeComp; #endif /* __cplusplus */ #endif #endif #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) #ifndef __ITypeInfo_FWD_DEFINED__ #define __ITypeInfo_FWD_DEFINED__ typedef interface ITypeInfo ITypeInfo; #ifdef __cplusplus interface ITypeInfo; #endif /* __cplusplus */ #endif #ifndef __ITypeInfo2_FWD_DEFINED__ #define __ITypeInfo2_FWD_DEFINED__ typedef interface ITypeInfo2 ITypeInfo2; #ifdef __cplusplus interface ITypeInfo2; #endif /* __cplusplus */ #endif #ifndef __ITypeLib_FWD_DEFINED__ #define __ITypeLib_FWD_DEFINED__ typedef interface ITypeLib ITypeLib; #ifdef __cplusplus interface ITypeLib; #endif /* __cplusplus */ #endif #ifndef __ITypeLib2_FWD_DEFINED__ #define __ITypeLib2_FWD_DEFINED__ typedef interface ITypeLib2 ITypeLib2; #ifdef __cplusplus interface ITypeLib2; #endif /* __cplusplus */ #endif #ifndef __ITypeChangeEvents_FWD_DEFINED__ #define __ITypeChangeEvents_FWD_DEFINED__ typedef interface ITypeChangeEvents ITypeChangeEvents; #ifdef __cplusplus interface ITypeChangeEvents; #endif /* __cplusplus */ #endif #ifndef __IErrorInfo_FWD_DEFINED__ #define __IErrorInfo_FWD_DEFINED__ typedef interface IErrorInfo IErrorInfo; #ifdef __cplusplus interface IErrorInfo; #endif /* __cplusplus */ #endif #ifndef __ICreateErrorInfo_FWD_DEFINED__ #define __ICreateErrorInfo_FWD_DEFINED__ typedef interface ICreateErrorInfo ICreateErrorInfo; #ifdef __cplusplus interface ICreateErrorInfo; #endif /* __cplusplus */ #endif #ifndef __ISupportErrorInfo_FWD_DEFINED__ #define __ISupportErrorInfo_FWD_DEFINED__ typedef interface ISupportErrorInfo ISupportErrorInfo; #ifdef __cplusplus interface ISupportErrorInfo; #endif /* __cplusplus */ #endif #ifndef __ITypeFactory_FWD_DEFINED__ #define __ITypeFactory_FWD_DEFINED__ typedef interface ITypeFactory ITypeFactory; #ifdef __cplusplus interface ITypeFactory; #endif /* __cplusplus */ #endif #ifndef __ITypeMarshal_FWD_DEFINED__ #define __ITypeMarshal_FWD_DEFINED__ typedef interface ITypeMarshal ITypeMarshal; #ifdef __cplusplus interface ITypeMarshal; #endif /* __cplusplus */ #endif #ifndef __IRecordInfo_FWD_DEFINED__ #define __IRecordInfo_FWD_DEFINED__ typedef interface IRecordInfo IRecordInfo; #ifdef __cplusplus interface IRecordInfo; #endif /* __cplusplus */ #endif #endif #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) /***************************************************************************** * IOleAutomationTypes interface (v1.0) */ #ifndef __IOleAutomationTypes_INTERFACE_DEFINED__ #define __IOleAutomationTypes_INTERFACE_DEFINED__ extern RPC_IF_HANDLE IOleAutomationTypes_v1_0_c_ifspec; extern RPC_IF_HANDLE IOleAutomationTypes_v1_0_s_ifspec; typedef CY CURRENCY; typedef struct tagSAFEARRAYBOUND { ULONG cElements; LONG lLbound; } SAFEARRAYBOUND; typedef struct tagSAFEARRAYBOUND *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 __WIDL_oaidl_generated_name_0000000E { 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; #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) /* Kludge for 3.0 release to disable new default-behavior. * For now we define _FORCENAMELESSUNION. For 4.0 this define * will be removed. */ #ifndef _FORCENAMELESSUNION #define _FORCENAMELESSUNION 1 #endif #if (__STDC__ && !defined(__cplusplus) && !defined(_FORCENAMELESSUNION)) || defined(NONAMELESSUNION) || (defined (_MSC_VER) && !defined(_MSC_EXTENSIONS) && !defined(_FORCENAMELESSUNION)) #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; struct tagVARIANT { union { struct __tagVARIANT { VARTYPE vt; WORD wReserved1; WORD wReserved2; WORD wReserved3; union { LONGLONG llVal; LONG lVal; BYTE bVal; SHORT iVal; FLOAT fltVal; DOUBLE dblVal; VARIANT_BOOL boolVal; SCODE scode; CY cyVal; DATE date; BSTR bstrVal; IUnknown *punkVal; IDispatch *pdispVal; SAFEARRAY *parray; BYTE *pbVal; SHORT *piVal; LONG *plVal; LONGLONG *pllVal; FLOAT *pfltVal; DOUBLE *pdblVal; VARIANT_BOOL *pboolVal; SCODE *pscode; CY *pcyVal; DATE *pdate; BSTR *pbstrVal; IUnknown **ppunkVal; IDispatch **ppdispVal; SAFEARRAY **pparray; VARIANT *pvarVal; PVOID byref; CHAR cVal; USHORT uiVal; ULONG ulVal; ULONGLONG ullVal; INT intVal; UINT uintVal; DECIMAL *pdecVal; CHAR *pcVal; USHORT *puiVal; ULONG *pulVal; ULONGLONG *pullVal; INT *pintVal; UINT *puintVal; 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 VARIANT *LPVARIANTARG; #if 0 typedef const VARIANT *REFVARIANT; #else #ifndef _REFVARIANT_DEFINED #define _REFVARIANT_DEFINED #ifdef __cplusplus #define REFVARIANT const VARIANT & #else #define REFVARIANT const VARIANT * __MIDL_CONST #endif #endif #endif struct _wireBRECORD { ULONG fFlags; ULONG clSize; IRecordInfo *pRecInfo; byte *pRecord; }; struct _wireVARIANT { DWORD clSize; DWORD rpcReserved; USHORT vt; USHORT wReserved1; USHORT wReserved2; USHORT wReserved3; __C89_NAMELESS union { LONGLONG llVal; LONG lVal; BYTE bVal; SHORT iVal; FLOAT fltVal; DOUBLE dblVal; VARIANT_BOOL boolVal; SCODE scode; CY cyVal; DATE date; wireBSTR bstrVal; IUnknown *punkVal; IDispatch *pdispVal; wirePSAFEARRAY parray; wireBRECORD brecVal; BYTE *pbVal; SHORT *piVal; LONG *plVal; LONGLONG *pllVal; FLOAT *pfltVal; DOUBLE *pdblVal; VARIANT_BOOL *pboolVal; SCODE *pscode; CY *pcyVal; DATE *pdate; wireBSTR *pbstrVal; IUnknown **ppunkVal; IDispatch **ppdispVal; wirePSAFEARRAY *pparray; wireVARIANT *pvarVal; CHAR cVal; USHORT uiVal; ULONG ulVal; ULONGLONG ullVal; INT intVal; UINT uintVal; DECIMAL decVal; DECIMAL *pdecVal; CHAR *pcVal; USHORT *puiVal; ULONG *pulVal; ULONGLONG *pullVal; INT *pintVal; UINT *puintVal; } __C89_NAMELESSUNIONNAME; }; typedef LONG DISPID; typedef DISPID MEMBERID; typedef DWORD HREFTYPE; typedef enum tagTYPEKIND { TKIND_ENUM = 0, TKIND_RECORD = 1, TKIND_MODULE = 2, TKIND_INTERFACE = 3, TKIND_DISPATCH = 4, TKIND_COCLASS = 5, TKIND_ALIAS = 6, TKIND_UNION = 7, TKIND_MAX = 8 } TYPEKIND; typedef struct tagTYPEDESC { __C89_NAMELESS union { struct tagTYPEDESC *lptdesc; struct tagARRAYDESC *lpadesc; HREFTYPE hreftype; } __C89_NAMELESSUNIONNAME; VARTYPE vt; } TYPEDESC; typedef struct tagARRAYDESC { TYPEDESC tdescElem; USHORT cDims; SAFEARRAYBOUND rgbounds[1]; } ARRAYDESC; typedef struct tagPARAMDESCEX { ULONG cBytes; VARIANTARG varDefaultValue; } PARAMDESCEX; typedef struct tagPARAMDESCEX *LPPARAMDESCEX; typedef struct tagPARAMDESC { LPPARAMDESCEX pparamdescex; USHORT wParamFlags; } PARAMDESC; typedef struct tagPARAMDESC *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_PTR dwReserved; USHORT wIDLFlags; } IDLDESC; typedef struct tagIDLDESC *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; __C89_NAMELESS 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; typedef struct tagTYPEATTR *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_PTR pvReserved; ULONG_PTR 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 = 2, CC_PASCAL = CC_MSCPASCAL, CC_MACPASCAL = 3, CC_STDCALL = 4, CC_FPFASTCALL = 5, CC_SYSCALL = 6, CC_MPWCDECL = 7, CC_MPWPASCAL = 8, CC_MAX = 9 } CALLCONV; typedef enum tagFUNCKIND { FUNC_VIRTUAL = 0, FUNC_PUREVIRTUAL = 1, FUNC_NONVIRTUAL = 2, FUNC_STATIC = 3, FUNC_DISPATCH = 4 } 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; typedef struct tagFUNCDESC *LPFUNCDESC; typedef enum tagVARKIND { VAR_PERINSTANCE = 0, VAR_STATIC = 1, VAR_CONST = 2, VAR_DISPATCH = 3 } VARKIND; #define IMPLTYPEFLAG_FDEFAULT (0x1) #define IMPLTYPEFLAG_FSOURCE (0x2) #define IMPLTYPEFLAG_FRESTRICTED (0x4) #define IMPLTYPEFLAG_FDEFAULTVTABLE (0x8) typedef struct tagVARDESC { MEMBERID memid; LPOLESTR lpstrSchema; __C89_NAMELESS union { ULONG oInst; VARIANT *lpvarValue; } __C89_NAMELESSUNIONNAME; ELEMDESC elemdescVar; WORD wVarFlags; VARKIND varkind; } VARDESC; typedef struct tagVARDESC *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; typedef struct tagCUSTDATAITEM { GUID guid; VARIANTARG varValue; } CUSTDATAITEM; typedef struct tagCUSTDATAITEM *LPCUSTDATAITEM; typedef struct tagCUSTDATA { DWORD cCustData; LPCUSTDATAITEM prgCustData; } CUSTDATA; typedef struct tagCUSTDATA *LPCUSTDATA; #endif /* __IOleAutomationTypes_INTERFACE_DEFINED__ */ #endif #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) /***************************************************************************** * ICreateTypeInfo interface */ #ifndef __ICreateTypeInfo_INTERFACE_DEFINED__ #define __ICreateTypeInfo_INTERFACE_DEFINED__ typedef ICreateTypeInfo *LPCREATETYPEINFO; DEFINE_GUID(IID_ICreateTypeInfo, 0x00020405, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("00020405-0000-0000-c000-000000000046") ICreateTypeInfo : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetGuid( REFGUID guid) = 0; virtual HRESULT STDMETHODCALLTYPE SetTypeFlags( UINT uTypeFlags) = 0; virtual HRESULT STDMETHODCALLTYPE SetDocString( LPOLESTR pStrDoc) = 0; virtual HRESULT STDMETHODCALLTYPE SetHelpContext( DWORD dwHelpContext) = 0; virtual HRESULT STDMETHODCALLTYPE SetVersion( WORD wMajorVerNum, WORD wMinorVerNum) = 0; virtual HRESULT STDMETHODCALLTYPE AddRefTypeInfo( ITypeInfo *pTInfo, HREFTYPE *phRefType) = 0; virtual HRESULT STDMETHODCALLTYPE AddFuncDesc( UINT index, FUNCDESC *pFuncDesc) = 0; virtual HRESULT STDMETHODCALLTYPE AddImplType( UINT index, HREFTYPE hRefType) = 0; virtual HRESULT STDMETHODCALLTYPE SetImplTypeFlags( UINT index, INT implTypeFlags) = 0; virtual HRESULT STDMETHODCALLTYPE SetAlignment( WORD cbAlignment) = 0; virtual HRESULT STDMETHODCALLTYPE SetSchema( LPOLESTR pStrSchema) = 0; virtual HRESULT STDMETHODCALLTYPE AddVarDesc( UINT index, VARDESC *pVarDesc) = 0; virtual HRESULT STDMETHODCALLTYPE SetFuncAndParamNames( UINT index, LPOLESTR *rgszNames, UINT cNames) = 0; virtual HRESULT STDMETHODCALLTYPE SetVarName( UINT index, LPOLESTR szName) = 0; virtual HRESULT STDMETHODCALLTYPE SetTypeDescAlias( TYPEDESC *pTDescAlias) = 0; virtual HRESULT STDMETHODCALLTYPE DefineFuncAsDllEntry( UINT index, LPOLESTR szDllName, LPOLESTR szProcName) = 0; virtual HRESULT STDMETHODCALLTYPE SetFuncDocString( UINT index, LPOLESTR szDocString) = 0; virtual HRESULT STDMETHODCALLTYPE SetVarDocString( UINT index, LPOLESTR szDocString) = 0; virtual HRESULT STDMETHODCALLTYPE SetFuncHelpContext( UINT index, DWORD dwHelpContext) = 0; virtual HRESULT STDMETHODCALLTYPE SetVarHelpContext( UINT index, DWORD dwHelpContext) = 0; virtual HRESULT STDMETHODCALLTYPE SetMops( UINT index, BSTR bstrMops) = 0; virtual HRESULT STDMETHODCALLTYPE SetTypeIdldesc( IDLDESC *pIdlDesc) = 0; virtual HRESULT STDMETHODCALLTYPE LayOut( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ICreateTypeInfo, 0x00020405, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct ICreateTypeInfoVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ICreateTypeInfo *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ICreateTypeInfo *This); ULONG (STDMETHODCALLTYPE *Release)( ICreateTypeInfo *This); /*** ICreateTypeInfo methods ***/ HRESULT (STDMETHODCALLTYPE *SetGuid)( ICreateTypeInfo *This, REFGUID guid); HRESULT (STDMETHODCALLTYPE *SetTypeFlags)( ICreateTypeInfo *This, UINT uTypeFlags); HRESULT (STDMETHODCALLTYPE *SetDocString)( ICreateTypeInfo *This, LPOLESTR pStrDoc); HRESULT (STDMETHODCALLTYPE *SetHelpContext)( ICreateTypeInfo *This, DWORD dwHelpContext); HRESULT (STDMETHODCALLTYPE *SetVersion)( ICreateTypeInfo *This, WORD wMajorVerNum, WORD wMinorVerNum); HRESULT (STDMETHODCALLTYPE *AddRefTypeInfo)( ICreateTypeInfo *This, ITypeInfo *pTInfo, HREFTYPE *phRefType); HRESULT (STDMETHODCALLTYPE *AddFuncDesc)( ICreateTypeInfo *This, UINT index, FUNCDESC *pFuncDesc); HRESULT (STDMETHODCALLTYPE *AddImplType)( ICreateTypeInfo *This, UINT index, HREFTYPE hRefType); HRESULT (STDMETHODCALLTYPE *SetImplTypeFlags)( ICreateTypeInfo *This, UINT index, INT implTypeFlags); HRESULT (STDMETHODCALLTYPE *SetAlignment)( ICreateTypeInfo *This, WORD cbAlignment); HRESULT (STDMETHODCALLTYPE *SetSchema)( ICreateTypeInfo *This, LPOLESTR pStrSchema); HRESULT (STDMETHODCALLTYPE *AddVarDesc)( ICreateTypeInfo *This, UINT index, VARDESC *pVarDesc); HRESULT (STDMETHODCALLTYPE *SetFuncAndParamNames)( ICreateTypeInfo *This, UINT index, LPOLESTR *rgszNames, UINT cNames); HRESULT (STDMETHODCALLTYPE *SetVarName)( ICreateTypeInfo *This, UINT index, LPOLESTR szName); HRESULT (STDMETHODCALLTYPE *SetTypeDescAlias)( ICreateTypeInfo *This, TYPEDESC *pTDescAlias); HRESULT (STDMETHODCALLTYPE *DefineFuncAsDllEntry)( ICreateTypeInfo *This, UINT index, LPOLESTR szDllName, LPOLESTR szProcName); HRESULT (STDMETHODCALLTYPE *SetFuncDocString)( ICreateTypeInfo *This, UINT index, LPOLESTR szDocString); HRESULT (STDMETHODCALLTYPE *SetVarDocString)( ICreateTypeInfo *This, UINT index, LPOLESTR szDocString); HRESULT (STDMETHODCALLTYPE *SetFuncHelpContext)( ICreateTypeInfo *This, UINT index, DWORD dwHelpContext); HRESULT (STDMETHODCALLTYPE *SetVarHelpContext)( ICreateTypeInfo *This, UINT index, DWORD dwHelpContext); HRESULT (STDMETHODCALLTYPE *SetMops)( ICreateTypeInfo *This, UINT index, BSTR bstrMops); HRESULT (STDMETHODCALLTYPE *SetTypeIdldesc)( ICreateTypeInfo *This, IDLDESC *pIdlDesc); HRESULT (STDMETHODCALLTYPE *LayOut)( ICreateTypeInfo *This); END_INTERFACE } ICreateTypeInfoVtbl; interface ICreateTypeInfo { CONST_VTBL ICreateTypeInfoVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ICreateTypeInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ICreateTypeInfo_AddRef(This) (This)->lpVtbl->AddRef(This) #define ICreateTypeInfo_Release(This) (This)->lpVtbl->Release(This) /*** ICreateTypeInfo methods ***/ #define ICreateTypeInfo_SetGuid(This,guid) (This)->lpVtbl->SetGuid(This,guid) #define ICreateTypeInfo_SetTypeFlags(This,uTypeFlags) (This)->lpVtbl->SetTypeFlags(This,uTypeFlags) #define ICreateTypeInfo_SetDocString(This,pStrDoc) (This)->lpVtbl->SetDocString(This,pStrDoc) #define ICreateTypeInfo_SetHelpContext(This,dwHelpContext) (This)->lpVtbl->SetHelpContext(This,dwHelpContext) #define ICreateTypeInfo_SetVersion(This,wMajorVerNum,wMinorVerNum) (This)->lpVtbl->SetVersion(This,wMajorVerNum,wMinorVerNum) #define ICreateTypeInfo_AddRefTypeInfo(This,pTInfo,phRefType) (This)->lpVtbl->AddRefTypeInfo(This,pTInfo,phRefType) #define ICreateTypeInfo_AddFuncDesc(This,index,pFuncDesc) (This)->lpVtbl->AddFuncDesc(This,index,pFuncDesc) #define ICreateTypeInfo_AddImplType(This,index,hRefType) (This)->lpVtbl->AddImplType(This,index,hRefType) #define ICreateTypeInfo_SetImplTypeFlags(This,index,implTypeFlags) (This)->lpVtbl->SetImplTypeFlags(This,index,implTypeFlags) #define ICreateTypeInfo_SetAlignment(This,cbAlignment) (This)->lpVtbl->SetAlignment(This,cbAlignment) #define ICreateTypeInfo_SetSchema(This,pStrSchema) (This)->lpVtbl->SetSchema(This,pStrSchema) #define ICreateTypeInfo_AddVarDesc(This,index,pVarDesc) (This)->lpVtbl->AddVarDesc(This,index,pVarDesc) #define ICreateTypeInfo_SetFuncAndParamNames(This,index,rgszNames,cNames) (This)->lpVtbl->SetFuncAndParamNames(This,index,rgszNames,cNames) #define ICreateTypeInfo_SetVarName(This,index,szName) (This)->lpVtbl->SetVarName(This,index,szName) #define ICreateTypeInfo_SetTypeDescAlias(This,pTDescAlias) (This)->lpVtbl->SetTypeDescAlias(This,pTDescAlias) #define ICreateTypeInfo_DefineFuncAsDllEntry(This,index,szDllName,szProcName) (This)->lpVtbl->DefineFuncAsDllEntry(This,index,szDllName,szProcName) #define ICreateTypeInfo_SetFuncDocString(This,index,szDocString) (This)->lpVtbl->SetFuncDocString(This,index,szDocString) #define ICreateTypeInfo_SetVarDocString(This,index,szDocString) (This)->lpVtbl->SetVarDocString(This,index,szDocString) #define ICreateTypeInfo_SetFuncHelpContext(This,index,dwHelpContext) (This)->lpVtbl->SetFuncHelpContext(This,index,dwHelpContext) #define ICreateTypeInfo_SetVarHelpContext(This,index,dwHelpContext) (This)->lpVtbl->SetVarHelpContext(This,index,dwHelpContext) #define ICreateTypeInfo_SetMops(This,index,bstrMops) (This)->lpVtbl->SetMops(This,index,bstrMops) #define ICreateTypeInfo_SetTypeIdldesc(This,pIdlDesc) (This)->lpVtbl->SetTypeIdldesc(This,pIdlDesc) #define ICreateTypeInfo_LayOut(This) (This)->lpVtbl->LayOut(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ICreateTypeInfo_QueryInterface(ICreateTypeInfo* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ICreateTypeInfo_AddRef(ICreateTypeInfo* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ICreateTypeInfo_Release(ICreateTypeInfo* This) { return This->lpVtbl->Release(This); } /*** ICreateTypeInfo methods ***/ static FORCEINLINE HRESULT ICreateTypeInfo_SetGuid(ICreateTypeInfo* This,REFGUID guid) { return This->lpVtbl->SetGuid(This,guid); } static FORCEINLINE HRESULT ICreateTypeInfo_SetTypeFlags(ICreateTypeInfo* This,UINT uTypeFlags) { return This->lpVtbl->SetTypeFlags(This,uTypeFlags); } static FORCEINLINE HRESULT ICreateTypeInfo_SetDocString(ICreateTypeInfo* This,LPOLESTR pStrDoc) { return This->lpVtbl->SetDocString(This,pStrDoc); } static FORCEINLINE HRESULT ICreateTypeInfo_SetHelpContext(ICreateTypeInfo* This,DWORD dwHelpContext) { return This->lpVtbl->SetHelpContext(This,dwHelpContext); } static FORCEINLINE HRESULT ICreateTypeInfo_SetVersion(ICreateTypeInfo* This,WORD wMajorVerNum,WORD wMinorVerNum) { return This->lpVtbl->SetVersion(This,wMajorVerNum,wMinorVerNum); } static FORCEINLINE HRESULT ICreateTypeInfo_AddRefTypeInfo(ICreateTypeInfo* This,ITypeInfo *pTInfo,HREFTYPE *phRefType) { return This->lpVtbl->AddRefTypeInfo(This,pTInfo,phRefType); } static FORCEINLINE HRESULT ICreateTypeInfo_AddFuncDesc(ICreateTypeInfo* This,UINT index,FUNCDESC *pFuncDesc) { return This->lpVtbl->AddFuncDesc(This,index,pFuncDesc); } static FORCEINLINE HRESULT ICreateTypeInfo_AddImplType(ICreateTypeInfo* This,UINT index,HREFTYPE hRefType) { return This->lpVtbl->AddImplType(This,index,hRefType); } static FORCEINLINE HRESULT ICreateTypeInfo_SetImplTypeFlags(ICreateTypeInfo* This,UINT index,INT implTypeFlags) { return This->lpVtbl->SetImplTypeFlags(This,index,implTypeFlags); } static FORCEINLINE HRESULT ICreateTypeInfo_SetAlignment(ICreateTypeInfo* This,WORD cbAlignment) { return This->lpVtbl->SetAlignment(This,cbAlignment); } static FORCEINLINE HRESULT ICreateTypeInfo_SetSchema(ICreateTypeInfo* This,LPOLESTR pStrSchema) { return This->lpVtbl->SetSchema(This,pStrSchema); } static FORCEINLINE HRESULT ICreateTypeInfo_AddVarDesc(ICreateTypeInfo* This,UINT index,VARDESC *pVarDesc) { return This->lpVtbl->AddVarDesc(This,index,pVarDesc); } static FORCEINLINE HRESULT ICreateTypeInfo_SetFuncAndParamNames(ICreateTypeInfo* This,UINT index,LPOLESTR *rgszNames,UINT cNames) { return This->lpVtbl->SetFuncAndParamNames(This,index,rgszNames,cNames); } static FORCEINLINE HRESULT ICreateTypeInfo_SetVarName(ICreateTypeInfo* This,UINT index,LPOLESTR szName) { return This->lpVtbl->SetVarName(This,index,szName); } static FORCEINLINE HRESULT ICreateTypeInfo_SetTypeDescAlias(ICreateTypeInfo* This,TYPEDESC *pTDescAlias) { return This->lpVtbl->SetTypeDescAlias(This,pTDescAlias); } static FORCEINLINE HRESULT ICreateTypeInfo_DefineFuncAsDllEntry(ICreateTypeInfo* This,UINT index,LPOLESTR szDllName,LPOLESTR szProcName) { return This->lpVtbl->DefineFuncAsDllEntry(This,index,szDllName,szProcName); } static FORCEINLINE HRESULT ICreateTypeInfo_SetFuncDocString(ICreateTypeInfo* This,UINT index,LPOLESTR szDocString) { return This->lpVtbl->SetFuncDocString(This,index,szDocString); } static FORCEINLINE HRESULT ICreateTypeInfo_SetVarDocString(ICreateTypeInfo* This,UINT index,LPOLESTR szDocString) { return This->lpVtbl->SetVarDocString(This,index,szDocString); } static FORCEINLINE HRESULT ICreateTypeInfo_SetFuncHelpContext(ICreateTypeInfo* This,UINT index,DWORD dwHelpContext) { return This->lpVtbl->SetFuncHelpContext(This,index,dwHelpContext); } static FORCEINLINE HRESULT ICreateTypeInfo_SetVarHelpContext(ICreateTypeInfo* This,UINT index,DWORD dwHelpContext) { return This->lpVtbl->SetVarHelpContext(This,index,dwHelpContext); } static FORCEINLINE HRESULT ICreateTypeInfo_SetMops(ICreateTypeInfo* This,UINT index,BSTR bstrMops) { return This->lpVtbl->SetMops(This,index,bstrMops); } static FORCEINLINE HRESULT ICreateTypeInfo_SetTypeIdldesc(ICreateTypeInfo* This,IDLDESC *pIdlDesc) { return This->lpVtbl->SetTypeIdldesc(This,pIdlDesc); } static FORCEINLINE HRESULT ICreateTypeInfo_LayOut(ICreateTypeInfo* This) { return This->lpVtbl->LayOut(This); } #endif #endif #endif #endif /* __ICreateTypeInfo_INTERFACE_DEFINED__ */ /***************************************************************************** * ICreateTypeInfo2 interface */ #ifndef __ICreateTypeInfo2_INTERFACE_DEFINED__ #define __ICreateTypeInfo2_INTERFACE_DEFINED__ typedef ICreateTypeInfo2 *LPCREATETYPEINFO2; DEFINE_GUID(IID_ICreateTypeInfo2, 0x0002040e, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0002040e-0000-0000-c000-000000000046") ICreateTypeInfo2 : public ICreateTypeInfo { virtual HRESULT STDMETHODCALLTYPE DeleteFuncDesc( UINT index) = 0; virtual HRESULT STDMETHODCALLTYPE DeleteFuncDescByMemId( MEMBERID memid, INVOKEKIND invKind) = 0; virtual HRESULT STDMETHODCALLTYPE DeleteVarDesc( UINT index) = 0; virtual HRESULT STDMETHODCALLTYPE DeleteVarDescByMemId( MEMBERID memid) = 0; virtual HRESULT STDMETHODCALLTYPE DeleteImplType( UINT index) = 0; virtual HRESULT STDMETHODCALLTYPE SetCustData( REFGUID guid, VARIANT *pVarVal) = 0; virtual HRESULT STDMETHODCALLTYPE SetFuncCustData( UINT index, REFGUID guid, VARIANT *pVarVal) = 0; virtual HRESULT STDMETHODCALLTYPE SetParamCustData( UINT indexFunc, UINT indexParam, REFGUID guid, VARIANT *pVarVal) = 0; virtual HRESULT STDMETHODCALLTYPE SetVarCustData( UINT index, REFGUID guid, VARIANT *pVarVal) = 0; virtual HRESULT STDMETHODCALLTYPE SetImplTypeCustData( UINT index, REFGUID guid, VARIANT *pVarVal) = 0; virtual HRESULT STDMETHODCALLTYPE SetHelpStringContext( ULONG dwHelpStringContext) = 0; virtual HRESULT STDMETHODCALLTYPE SetFuncHelpStringContext( UINT index, ULONG dwHelpStringContext) = 0; virtual HRESULT STDMETHODCALLTYPE SetVarHelpStringContext( UINT index, ULONG dwHelpStringContext) = 0; virtual HRESULT STDMETHODCALLTYPE Invalidate( ) = 0; virtual HRESULT STDMETHODCALLTYPE SetName( LPOLESTR szName) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ICreateTypeInfo2, 0x0002040e, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct ICreateTypeInfo2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ICreateTypeInfo2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ICreateTypeInfo2 *This); ULONG (STDMETHODCALLTYPE *Release)( ICreateTypeInfo2 *This); /*** ICreateTypeInfo methods ***/ HRESULT (STDMETHODCALLTYPE *SetGuid)( ICreateTypeInfo2 *This, REFGUID guid); HRESULT (STDMETHODCALLTYPE *SetTypeFlags)( ICreateTypeInfo2 *This, UINT uTypeFlags); HRESULT (STDMETHODCALLTYPE *SetDocString)( ICreateTypeInfo2 *This, LPOLESTR pStrDoc); HRESULT (STDMETHODCALLTYPE *SetHelpContext)( ICreateTypeInfo2 *This, DWORD dwHelpContext); HRESULT (STDMETHODCALLTYPE *SetVersion)( ICreateTypeInfo2 *This, WORD wMajorVerNum, WORD wMinorVerNum); HRESULT (STDMETHODCALLTYPE *AddRefTypeInfo)( ICreateTypeInfo2 *This, ITypeInfo *pTInfo, HREFTYPE *phRefType); HRESULT (STDMETHODCALLTYPE *AddFuncDesc)( ICreateTypeInfo2 *This, UINT index, FUNCDESC *pFuncDesc); HRESULT (STDMETHODCALLTYPE *AddImplType)( ICreateTypeInfo2 *This, UINT index, HREFTYPE hRefType); HRESULT (STDMETHODCALLTYPE *SetImplTypeFlags)( ICreateTypeInfo2 *This, UINT index, INT implTypeFlags); HRESULT (STDMETHODCALLTYPE *SetAlignment)( ICreateTypeInfo2 *This, WORD cbAlignment); HRESULT (STDMETHODCALLTYPE *SetSchema)( ICreateTypeInfo2 *This, LPOLESTR pStrSchema); HRESULT (STDMETHODCALLTYPE *AddVarDesc)( ICreateTypeInfo2 *This, UINT index, VARDESC *pVarDesc); HRESULT (STDMETHODCALLTYPE *SetFuncAndParamNames)( ICreateTypeInfo2 *This, UINT index, LPOLESTR *rgszNames, UINT cNames); HRESULT (STDMETHODCALLTYPE *SetVarName)( ICreateTypeInfo2 *This, UINT index, LPOLESTR szName); HRESULT (STDMETHODCALLTYPE *SetTypeDescAlias)( ICreateTypeInfo2 *This, TYPEDESC *pTDescAlias); HRESULT (STDMETHODCALLTYPE *DefineFuncAsDllEntry)( ICreateTypeInfo2 *This, UINT index, LPOLESTR szDllName, LPOLESTR szProcName); HRESULT (STDMETHODCALLTYPE *SetFuncDocString)( ICreateTypeInfo2 *This, UINT index, LPOLESTR szDocString); HRESULT (STDMETHODCALLTYPE *SetVarDocString)( ICreateTypeInfo2 *This, UINT index, LPOLESTR szDocString); HRESULT (STDMETHODCALLTYPE *SetFuncHelpContext)( ICreateTypeInfo2 *This, UINT index, DWORD dwHelpContext); HRESULT (STDMETHODCALLTYPE *SetVarHelpContext)( ICreateTypeInfo2 *This, UINT index, DWORD dwHelpContext); HRESULT (STDMETHODCALLTYPE *SetMops)( ICreateTypeInfo2 *This, UINT index, BSTR bstrMops); HRESULT (STDMETHODCALLTYPE *SetTypeIdldesc)( ICreateTypeInfo2 *This, IDLDESC *pIdlDesc); HRESULT (STDMETHODCALLTYPE *LayOut)( ICreateTypeInfo2 *This); /*** ICreateTypeInfo2 methods ***/ HRESULT (STDMETHODCALLTYPE *DeleteFuncDesc)( ICreateTypeInfo2 *This, UINT index); HRESULT (STDMETHODCALLTYPE *DeleteFuncDescByMemId)( ICreateTypeInfo2 *This, MEMBERID memid, INVOKEKIND invKind); HRESULT (STDMETHODCALLTYPE *DeleteVarDesc)( ICreateTypeInfo2 *This, UINT index); HRESULT (STDMETHODCALLTYPE *DeleteVarDescByMemId)( ICreateTypeInfo2 *This, MEMBERID memid); HRESULT (STDMETHODCALLTYPE *DeleteImplType)( ICreateTypeInfo2 *This, UINT index); HRESULT (STDMETHODCALLTYPE *SetCustData)( ICreateTypeInfo2 *This, REFGUID guid, VARIANT *pVarVal); HRESULT (STDMETHODCALLTYPE *SetFuncCustData)( ICreateTypeInfo2 *This, UINT index, REFGUID guid, VARIANT *pVarVal); HRESULT (STDMETHODCALLTYPE *SetParamCustData)( ICreateTypeInfo2 *This, UINT indexFunc, UINT indexParam, REFGUID guid, VARIANT *pVarVal); HRESULT (STDMETHODCALLTYPE *SetVarCustData)( ICreateTypeInfo2 *This, UINT index, REFGUID guid, VARIANT *pVarVal); HRESULT (STDMETHODCALLTYPE *SetImplTypeCustData)( ICreateTypeInfo2 *This, UINT index, REFGUID guid, VARIANT *pVarVal); HRESULT (STDMETHODCALLTYPE *SetHelpStringContext)( ICreateTypeInfo2 *This, ULONG dwHelpStringContext); HRESULT (STDMETHODCALLTYPE *SetFuncHelpStringContext)( ICreateTypeInfo2 *This, UINT index, ULONG dwHelpStringContext); HRESULT (STDMETHODCALLTYPE *SetVarHelpStringContext)( ICreateTypeInfo2 *This, UINT index, ULONG dwHelpStringContext); HRESULT (STDMETHODCALLTYPE *Invalidate)( ICreateTypeInfo2 *This); HRESULT (STDMETHODCALLTYPE *SetName)( ICreateTypeInfo2 *This, LPOLESTR szName); END_INTERFACE } ICreateTypeInfo2Vtbl; interface ICreateTypeInfo2 { CONST_VTBL ICreateTypeInfo2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ICreateTypeInfo2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ICreateTypeInfo2_AddRef(This) (This)->lpVtbl->AddRef(This) #define ICreateTypeInfo2_Release(This) (This)->lpVtbl->Release(This) /*** ICreateTypeInfo methods ***/ #define ICreateTypeInfo2_SetGuid(This,guid) (This)->lpVtbl->SetGuid(This,guid) #define ICreateTypeInfo2_SetTypeFlags(This,uTypeFlags) (This)->lpVtbl->SetTypeFlags(This,uTypeFlags) #define ICreateTypeInfo2_SetDocString(This,pStrDoc) (This)->lpVtbl->SetDocString(This,pStrDoc) #define ICreateTypeInfo2_SetHelpContext(This,dwHelpContext) (This)->lpVtbl->SetHelpContext(This,dwHelpContext) #define ICreateTypeInfo2_SetVersion(This,wMajorVerNum,wMinorVerNum) (This)->lpVtbl->SetVersion(This,wMajorVerNum,wMinorVerNum) #define ICreateTypeInfo2_AddRefTypeInfo(This,pTInfo,phRefType) (This)->lpVtbl->AddRefTypeInfo(This,pTInfo,phRefType) #define ICreateTypeInfo2_AddFuncDesc(This,index,pFuncDesc) (This)->lpVtbl->AddFuncDesc(This,index,pFuncDesc) #define ICreateTypeInfo2_AddImplType(This,index,hRefType) (This)->lpVtbl->AddImplType(This,index,hRefType) #define ICreateTypeInfo2_SetImplTypeFlags(This,index,implTypeFlags) (This)->lpVtbl->SetImplTypeFlags(This,index,implTypeFlags) #define ICreateTypeInfo2_SetAlignment(This,cbAlignment) (This)->lpVtbl->SetAlignment(This,cbAlignment) #define ICreateTypeInfo2_SetSchema(This,pStrSchema) (This)->lpVtbl->SetSchema(This,pStrSchema) #define ICreateTypeInfo2_AddVarDesc(This,index,pVarDesc) (This)->lpVtbl->AddVarDesc(This,index,pVarDesc) #define ICreateTypeInfo2_SetFuncAndParamNames(This,index,rgszNames,cNames) (This)->lpVtbl->SetFuncAndParamNames(This,index,rgszNames,cNames) #define ICreateTypeInfo2_SetVarName(This,index,szName) (This)->lpVtbl->SetVarName(This,index,szName) #define ICreateTypeInfo2_SetTypeDescAlias(This,pTDescAlias) (This)->lpVtbl->SetTypeDescAlias(This,pTDescAlias) #define ICreateTypeInfo2_DefineFuncAsDllEntry(This,index,szDllName,szProcName) (This)->lpVtbl->DefineFuncAsDllEntry(This,index,szDllName,szProcName) #define ICreateTypeInfo2_SetFuncDocString(This,index,szDocString) (This)->lpVtbl->SetFuncDocString(This,index,szDocString) #define ICreateTypeInfo2_SetVarDocString(This,index,szDocString) (This)->lpVtbl->SetVarDocString(This,index,szDocString) #define ICreateTypeInfo2_SetFuncHelpContext(This,index,dwHelpContext) (This)->lpVtbl->SetFuncHelpContext(This,index,dwHelpContext) #define ICreateTypeInfo2_SetVarHelpContext(This,index,dwHelpContext) (This)->lpVtbl->SetVarHelpContext(This,index,dwHelpContext) #define ICreateTypeInfo2_SetMops(This,index,bstrMops) (This)->lpVtbl->SetMops(This,index,bstrMops) #define ICreateTypeInfo2_SetTypeIdldesc(This,pIdlDesc) (This)->lpVtbl->SetTypeIdldesc(This,pIdlDesc) #define ICreateTypeInfo2_LayOut(This) (This)->lpVtbl->LayOut(This) /*** ICreateTypeInfo2 methods ***/ #define ICreateTypeInfo2_DeleteFuncDesc(This,index) (This)->lpVtbl->DeleteFuncDesc(This,index) #define ICreateTypeInfo2_DeleteFuncDescByMemId(This,memid,invKind) (This)->lpVtbl->DeleteFuncDescByMemId(This,memid,invKind) #define ICreateTypeInfo2_DeleteVarDesc(This,index) (This)->lpVtbl->DeleteVarDesc(This,index) #define ICreateTypeInfo2_DeleteVarDescByMemId(This,memid) (This)->lpVtbl->DeleteVarDescByMemId(This,memid) #define ICreateTypeInfo2_DeleteImplType(This,index) (This)->lpVtbl->DeleteImplType(This,index) #define ICreateTypeInfo2_SetCustData(This,guid,pVarVal) (This)->lpVtbl->SetCustData(This,guid,pVarVal) #define ICreateTypeInfo2_SetFuncCustData(This,index,guid,pVarVal) (This)->lpVtbl->SetFuncCustData(This,index,guid,pVarVal) #define ICreateTypeInfo2_SetParamCustData(This,indexFunc,indexParam,guid,pVarVal) (This)->lpVtbl->SetParamCustData(This,indexFunc,indexParam,guid,pVarVal) #define ICreateTypeInfo2_SetVarCustData(This,index,guid,pVarVal) (This)->lpVtbl->SetVarCustData(This,index,guid,pVarVal) #define ICreateTypeInfo2_SetImplTypeCustData(This,index,guid,pVarVal) (This)->lpVtbl->SetImplTypeCustData(This,index,guid,pVarVal) #define ICreateTypeInfo2_SetHelpStringContext(This,dwHelpStringContext) (This)->lpVtbl->SetHelpStringContext(This,dwHelpStringContext) #define ICreateTypeInfo2_SetFuncHelpStringContext(This,index,dwHelpStringContext) (This)->lpVtbl->SetFuncHelpStringContext(This,index,dwHelpStringContext) #define ICreateTypeInfo2_SetVarHelpStringContext(This,index,dwHelpStringContext) (This)->lpVtbl->SetVarHelpStringContext(This,index,dwHelpStringContext) #define ICreateTypeInfo2_Invalidate(This) (This)->lpVtbl->Invalidate(This) #define ICreateTypeInfo2_SetName(This,szName) (This)->lpVtbl->SetName(This,szName) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ICreateTypeInfo2_QueryInterface(ICreateTypeInfo2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ICreateTypeInfo2_AddRef(ICreateTypeInfo2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ICreateTypeInfo2_Release(ICreateTypeInfo2* This) { return This->lpVtbl->Release(This); } /*** ICreateTypeInfo methods ***/ static FORCEINLINE HRESULT ICreateTypeInfo2_SetGuid(ICreateTypeInfo2* This,REFGUID guid) { return This->lpVtbl->SetGuid(This,guid); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetTypeFlags(ICreateTypeInfo2* This,UINT uTypeFlags) { return This->lpVtbl->SetTypeFlags(This,uTypeFlags); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetDocString(ICreateTypeInfo2* This,LPOLESTR pStrDoc) { return This->lpVtbl->SetDocString(This,pStrDoc); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetHelpContext(ICreateTypeInfo2* This,DWORD dwHelpContext) { return This->lpVtbl->SetHelpContext(This,dwHelpContext); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetVersion(ICreateTypeInfo2* This,WORD wMajorVerNum,WORD wMinorVerNum) { return This->lpVtbl->SetVersion(This,wMajorVerNum,wMinorVerNum); } static FORCEINLINE HRESULT ICreateTypeInfo2_AddRefTypeInfo(ICreateTypeInfo2* This,ITypeInfo *pTInfo,HREFTYPE *phRefType) { return This->lpVtbl->AddRefTypeInfo(This,pTInfo,phRefType); } static FORCEINLINE HRESULT ICreateTypeInfo2_AddFuncDesc(ICreateTypeInfo2* This,UINT index,FUNCDESC *pFuncDesc) { return This->lpVtbl->AddFuncDesc(This,index,pFuncDesc); } static FORCEINLINE HRESULT ICreateTypeInfo2_AddImplType(ICreateTypeInfo2* This,UINT index,HREFTYPE hRefType) { return This->lpVtbl->AddImplType(This,index,hRefType); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetImplTypeFlags(ICreateTypeInfo2* This,UINT index,INT implTypeFlags) { return This->lpVtbl->SetImplTypeFlags(This,index,implTypeFlags); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetAlignment(ICreateTypeInfo2* This,WORD cbAlignment) { return This->lpVtbl->SetAlignment(This,cbAlignment); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetSchema(ICreateTypeInfo2* This,LPOLESTR pStrSchema) { return This->lpVtbl->SetSchema(This,pStrSchema); } static FORCEINLINE HRESULT ICreateTypeInfo2_AddVarDesc(ICreateTypeInfo2* This,UINT index,VARDESC *pVarDesc) { return This->lpVtbl->AddVarDesc(This,index,pVarDesc); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetFuncAndParamNames(ICreateTypeInfo2* This,UINT index,LPOLESTR *rgszNames,UINT cNames) { return This->lpVtbl->SetFuncAndParamNames(This,index,rgszNames,cNames); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetVarName(ICreateTypeInfo2* This,UINT index,LPOLESTR szName) { return This->lpVtbl->SetVarName(This,index,szName); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetTypeDescAlias(ICreateTypeInfo2* This,TYPEDESC *pTDescAlias) { return This->lpVtbl->SetTypeDescAlias(This,pTDescAlias); } static FORCEINLINE HRESULT ICreateTypeInfo2_DefineFuncAsDllEntry(ICreateTypeInfo2* This,UINT index,LPOLESTR szDllName,LPOLESTR szProcName) { return This->lpVtbl->DefineFuncAsDllEntry(This,index,szDllName,szProcName); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetFuncDocString(ICreateTypeInfo2* This,UINT index,LPOLESTR szDocString) { return This->lpVtbl->SetFuncDocString(This,index,szDocString); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetVarDocString(ICreateTypeInfo2* This,UINT index,LPOLESTR szDocString) { return This->lpVtbl->SetVarDocString(This,index,szDocString); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetFuncHelpContext(ICreateTypeInfo2* This,UINT index,DWORD dwHelpContext) { return This->lpVtbl->SetFuncHelpContext(This,index,dwHelpContext); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetVarHelpContext(ICreateTypeInfo2* This,UINT index,DWORD dwHelpContext) { return This->lpVtbl->SetVarHelpContext(This,index,dwHelpContext); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetMops(ICreateTypeInfo2* This,UINT index,BSTR bstrMops) { return This->lpVtbl->SetMops(This,index,bstrMops); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetTypeIdldesc(ICreateTypeInfo2* This,IDLDESC *pIdlDesc) { return This->lpVtbl->SetTypeIdldesc(This,pIdlDesc); } static FORCEINLINE HRESULT ICreateTypeInfo2_LayOut(ICreateTypeInfo2* This) { return This->lpVtbl->LayOut(This); } /*** ICreateTypeInfo2 methods ***/ static FORCEINLINE HRESULT ICreateTypeInfo2_DeleteFuncDesc(ICreateTypeInfo2* This,UINT index) { return This->lpVtbl->DeleteFuncDesc(This,index); } static FORCEINLINE HRESULT ICreateTypeInfo2_DeleteFuncDescByMemId(ICreateTypeInfo2* This,MEMBERID memid,INVOKEKIND invKind) { return This->lpVtbl->DeleteFuncDescByMemId(This,memid,invKind); } static FORCEINLINE HRESULT ICreateTypeInfo2_DeleteVarDesc(ICreateTypeInfo2* This,UINT index) { return This->lpVtbl->DeleteVarDesc(This,index); } static FORCEINLINE HRESULT ICreateTypeInfo2_DeleteVarDescByMemId(ICreateTypeInfo2* This,MEMBERID memid) { return This->lpVtbl->DeleteVarDescByMemId(This,memid); } static FORCEINLINE HRESULT ICreateTypeInfo2_DeleteImplType(ICreateTypeInfo2* This,UINT index) { return This->lpVtbl->DeleteImplType(This,index); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetCustData(ICreateTypeInfo2* This,REFGUID guid,VARIANT *pVarVal) { return This->lpVtbl->SetCustData(This,guid,pVarVal); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetFuncCustData(ICreateTypeInfo2* This,UINT index,REFGUID guid,VARIANT *pVarVal) { return This->lpVtbl->SetFuncCustData(This,index,guid,pVarVal); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetParamCustData(ICreateTypeInfo2* This,UINT indexFunc,UINT indexParam,REFGUID guid,VARIANT *pVarVal) { return This->lpVtbl->SetParamCustData(This,indexFunc,indexParam,guid,pVarVal); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetVarCustData(ICreateTypeInfo2* This,UINT index,REFGUID guid,VARIANT *pVarVal) { return This->lpVtbl->SetVarCustData(This,index,guid,pVarVal); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetImplTypeCustData(ICreateTypeInfo2* This,UINT index,REFGUID guid,VARIANT *pVarVal) { return This->lpVtbl->SetImplTypeCustData(This,index,guid,pVarVal); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetHelpStringContext(ICreateTypeInfo2* This,ULONG dwHelpStringContext) { return This->lpVtbl->SetHelpStringContext(This,dwHelpStringContext); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetFuncHelpStringContext(ICreateTypeInfo2* This,UINT index,ULONG dwHelpStringContext) { return This->lpVtbl->SetFuncHelpStringContext(This,index,dwHelpStringContext); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetVarHelpStringContext(ICreateTypeInfo2* This,UINT index,ULONG dwHelpStringContext) { return This->lpVtbl->SetVarHelpStringContext(This,index,dwHelpStringContext); } static FORCEINLINE HRESULT ICreateTypeInfo2_Invalidate(ICreateTypeInfo2* This) { return This->lpVtbl->Invalidate(This); } static FORCEINLINE HRESULT ICreateTypeInfo2_SetName(ICreateTypeInfo2* This,LPOLESTR szName) { return This->lpVtbl->SetName(This,szName); } #endif #endif #endif #endif /* __ICreateTypeInfo2_INTERFACE_DEFINED__ */ /***************************************************************************** * ICreateTypeLib interface */ #ifndef __ICreateTypeLib_INTERFACE_DEFINED__ #define __ICreateTypeLib_INTERFACE_DEFINED__ typedef ICreateTypeLib *LPCREATETYPELIB; DEFINE_GUID(IID_ICreateTypeLib, 0x00020406, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("00020406-0000-0000-c000-000000000046") ICreateTypeLib : public IUnknown { virtual HRESULT STDMETHODCALLTYPE CreateTypeInfo( LPOLESTR szName, TYPEKIND tkind, ICreateTypeInfo **ppCTInfo) = 0; virtual HRESULT STDMETHODCALLTYPE SetName( LPOLESTR szName) = 0; virtual HRESULT STDMETHODCALLTYPE SetVersion( WORD wMajorVerNum, WORD wMinorVerNum) = 0; virtual HRESULT STDMETHODCALLTYPE SetGuid( REFGUID guid) = 0; virtual HRESULT STDMETHODCALLTYPE SetDocString( LPOLESTR szDoc) = 0; virtual HRESULT STDMETHODCALLTYPE SetHelpFileName( LPOLESTR szHelpFileName) = 0; virtual HRESULT STDMETHODCALLTYPE SetHelpContext( DWORD dwHelpContext) = 0; virtual HRESULT STDMETHODCALLTYPE SetLcid( LCID lcid) = 0; virtual HRESULT STDMETHODCALLTYPE SetLibFlags( UINT uLibFlags) = 0; virtual HRESULT STDMETHODCALLTYPE SaveAllChanges( ) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ICreateTypeLib, 0x00020406, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct ICreateTypeLibVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ICreateTypeLib *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ICreateTypeLib *This); ULONG (STDMETHODCALLTYPE *Release)( ICreateTypeLib *This); /*** ICreateTypeLib methods ***/ HRESULT (STDMETHODCALLTYPE *CreateTypeInfo)( ICreateTypeLib *This, LPOLESTR szName, TYPEKIND tkind, ICreateTypeInfo **ppCTInfo); HRESULT (STDMETHODCALLTYPE *SetName)( ICreateTypeLib *This, LPOLESTR szName); HRESULT (STDMETHODCALLTYPE *SetVersion)( ICreateTypeLib *This, WORD wMajorVerNum, WORD wMinorVerNum); HRESULT (STDMETHODCALLTYPE *SetGuid)( ICreateTypeLib *This, REFGUID guid); HRESULT (STDMETHODCALLTYPE *SetDocString)( ICreateTypeLib *This, LPOLESTR szDoc); HRESULT (STDMETHODCALLTYPE *SetHelpFileName)( ICreateTypeLib *This, LPOLESTR szHelpFileName); HRESULT (STDMETHODCALLTYPE *SetHelpContext)( ICreateTypeLib *This, DWORD dwHelpContext); HRESULT (STDMETHODCALLTYPE *SetLcid)( ICreateTypeLib *This, LCID lcid); HRESULT (STDMETHODCALLTYPE *SetLibFlags)( ICreateTypeLib *This, UINT uLibFlags); HRESULT (STDMETHODCALLTYPE *SaveAllChanges)( ICreateTypeLib *This); END_INTERFACE } ICreateTypeLibVtbl; interface ICreateTypeLib { CONST_VTBL ICreateTypeLibVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ICreateTypeLib_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ICreateTypeLib_AddRef(This) (This)->lpVtbl->AddRef(This) #define ICreateTypeLib_Release(This) (This)->lpVtbl->Release(This) /*** ICreateTypeLib methods ***/ #define ICreateTypeLib_CreateTypeInfo(This,szName,tkind,ppCTInfo) (This)->lpVtbl->CreateTypeInfo(This,szName,tkind,ppCTInfo) #define ICreateTypeLib_SetName(This,szName) (This)->lpVtbl->SetName(This,szName) #define ICreateTypeLib_SetVersion(This,wMajorVerNum,wMinorVerNum) (This)->lpVtbl->SetVersion(This,wMajorVerNum,wMinorVerNum) #define ICreateTypeLib_SetGuid(This,guid) (This)->lpVtbl->SetGuid(This,guid) #define ICreateTypeLib_SetDocString(This,szDoc) (This)->lpVtbl->SetDocString(This,szDoc) #define ICreateTypeLib_SetHelpFileName(This,szHelpFileName) (This)->lpVtbl->SetHelpFileName(This,szHelpFileName) #define ICreateTypeLib_SetHelpContext(This,dwHelpContext) (This)->lpVtbl->SetHelpContext(This,dwHelpContext) #define ICreateTypeLib_SetLcid(This,lcid) (This)->lpVtbl->SetLcid(This,lcid) #define ICreateTypeLib_SetLibFlags(This,uLibFlags) (This)->lpVtbl->SetLibFlags(This,uLibFlags) #define ICreateTypeLib_SaveAllChanges(This) (This)->lpVtbl->SaveAllChanges(This) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ICreateTypeLib_QueryInterface(ICreateTypeLib* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ICreateTypeLib_AddRef(ICreateTypeLib* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ICreateTypeLib_Release(ICreateTypeLib* This) { return This->lpVtbl->Release(This); } /*** ICreateTypeLib methods ***/ static FORCEINLINE HRESULT ICreateTypeLib_CreateTypeInfo(ICreateTypeLib* This,LPOLESTR szName,TYPEKIND tkind,ICreateTypeInfo **ppCTInfo) { return This->lpVtbl->CreateTypeInfo(This,szName,tkind,ppCTInfo); } static FORCEINLINE HRESULT ICreateTypeLib_SetName(ICreateTypeLib* This,LPOLESTR szName) { return This->lpVtbl->SetName(This,szName); } static FORCEINLINE HRESULT ICreateTypeLib_SetVersion(ICreateTypeLib* This,WORD wMajorVerNum,WORD wMinorVerNum) { return This->lpVtbl->SetVersion(This,wMajorVerNum,wMinorVerNum); } static FORCEINLINE HRESULT ICreateTypeLib_SetGuid(ICreateTypeLib* This,REFGUID guid) { return This->lpVtbl->SetGuid(This,guid); } static FORCEINLINE HRESULT ICreateTypeLib_SetDocString(ICreateTypeLib* This,LPOLESTR szDoc) { return This->lpVtbl->SetDocString(This,szDoc); } static FORCEINLINE HRESULT ICreateTypeLib_SetHelpFileName(ICreateTypeLib* This,LPOLESTR szHelpFileName) { return This->lpVtbl->SetHelpFileName(This,szHelpFileName); } static FORCEINLINE HRESULT ICreateTypeLib_SetHelpContext(ICreateTypeLib* This,DWORD dwHelpContext) { return This->lpVtbl->SetHelpContext(This,dwHelpContext); } static FORCEINLINE HRESULT ICreateTypeLib_SetLcid(ICreateTypeLib* This,LCID lcid) { return This->lpVtbl->SetLcid(This,lcid); } static FORCEINLINE HRESULT ICreateTypeLib_SetLibFlags(ICreateTypeLib* This,UINT uLibFlags) { return This->lpVtbl->SetLibFlags(This,uLibFlags); } static FORCEINLINE HRESULT ICreateTypeLib_SaveAllChanges(ICreateTypeLib* This) { return This->lpVtbl->SaveAllChanges(This); } #endif #endif #endif #endif /* __ICreateTypeLib_INTERFACE_DEFINED__ */ /***************************************************************************** * ICreateTypeLib2 interface */ #ifndef __ICreateTypeLib2_INTERFACE_DEFINED__ #define __ICreateTypeLib2_INTERFACE_DEFINED__ typedef ICreateTypeLib2 *LPCREATETYPELIB2; DEFINE_GUID(IID_ICreateTypeLib2, 0x0002040f, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0002040f-0000-0000-c000-000000000046") ICreateTypeLib2 : public ICreateTypeLib { virtual HRESULT STDMETHODCALLTYPE DeleteTypeInfo( LPOLESTR szName) = 0; virtual HRESULT STDMETHODCALLTYPE SetCustData( REFGUID guid, VARIANT *pVarVal) = 0; virtual HRESULT STDMETHODCALLTYPE SetHelpStringContext( ULONG dwHelpStringContext) = 0; virtual HRESULT STDMETHODCALLTYPE SetHelpStringDll( LPOLESTR szFileName) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ICreateTypeLib2, 0x0002040f, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct ICreateTypeLib2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ICreateTypeLib2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ICreateTypeLib2 *This); ULONG (STDMETHODCALLTYPE *Release)( ICreateTypeLib2 *This); /*** ICreateTypeLib methods ***/ HRESULT (STDMETHODCALLTYPE *CreateTypeInfo)( ICreateTypeLib2 *This, LPOLESTR szName, TYPEKIND tkind, ICreateTypeInfo **ppCTInfo); HRESULT (STDMETHODCALLTYPE *SetName)( ICreateTypeLib2 *This, LPOLESTR szName); HRESULT (STDMETHODCALLTYPE *SetVersion)( ICreateTypeLib2 *This, WORD wMajorVerNum, WORD wMinorVerNum); HRESULT (STDMETHODCALLTYPE *SetGuid)( ICreateTypeLib2 *This, REFGUID guid); HRESULT (STDMETHODCALLTYPE *SetDocString)( ICreateTypeLib2 *This, LPOLESTR szDoc); HRESULT (STDMETHODCALLTYPE *SetHelpFileName)( ICreateTypeLib2 *This, LPOLESTR szHelpFileName); HRESULT (STDMETHODCALLTYPE *SetHelpContext)( ICreateTypeLib2 *This, DWORD dwHelpContext); HRESULT (STDMETHODCALLTYPE *SetLcid)( ICreateTypeLib2 *This, LCID lcid); HRESULT (STDMETHODCALLTYPE *SetLibFlags)( ICreateTypeLib2 *This, UINT uLibFlags); HRESULT (STDMETHODCALLTYPE *SaveAllChanges)( ICreateTypeLib2 *This); /*** ICreateTypeLib2 methods ***/ HRESULT (STDMETHODCALLTYPE *DeleteTypeInfo)( ICreateTypeLib2 *This, LPOLESTR szName); HRESULT (STDMETHODCALLTYPE *SetCustData)( ICreateTypeLib2 *This, REFGUID guid, VARIANT *pVarVal); HRESULT (STDMETHODCALLTYPE *SetHelpStringContext)( ICreateTypeLib2 *This, ULONG dwHelpStringContext); HRESULT (STDMETHODCALLTYPE *SetHelpStringDll)( ICreateTypeLib2 *This, LPOLESTR szFileName); END_INTERFACE } ICreateTypeLib2Vtbl; interface ICreateTypeLib2 { CONST_VTBL ICreateTypeLib2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ICreateTypeLib2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ICreateTypeLib2_AddRef(This) (This)->lpVtbl->AddRef(This) #define ICreateTypeLib2_Release(This) (This)->lpVtbl->Release(This) /*** ICreateTypeLib methods ***/ #define ICreateTypeLib2_CreateTypeInfo(This,szName,tkind,ppCTInfo) (This)->lpVtbl->CreateTypeInfo(This,szName,tkind,ppCTInfo) #define ICreateTypeLib2_SetName(This,szName) (This)->lpVtbl->SetName(This,szName) #define ICreateTypeLib2_SetVersion(This,wMajorVerNum,wMinorVerNum) (This)->lpVtbl->SetVersion(This,wMajorVerNum,wMinorVerNum) #define ICreateTypeLib2_SetGuid(This,guid) (This)->lpVtbl->SetGuid(This,guid) #define ICreateTypeLib2_SetDocString(This,szDoc) (This)->lpVtbl->SetDocString(This,szDoc) #define ICreateTypeLib2_SetHelpFileName(This,szHelpFileName) (This)->lpVtbl->SetHelpFileName(This,szHelpFileName) #define ICreateTypeLib2_SetHelpContext(This,dwHelpContext) (This)->lpVtbl->SetHelpContext(This,dwHelpContext) #define ICreateTypeLib2_SetLcid(This,lcid) (This)->lpVtbl->SetLcid(This,lcid) #define ICreateTypeLib2_SetLibFlags(This,uLibFlags) (This)->lpVtbl->SetLibFlags(This,uLibFlags) #define ICreateTypeLib2_SaveAllChanges(This) (This)->lpVtbl->SaveAllChanges(This) /*** ICreateTypeLib2 methods ***/ #define ICreateTypeLib2_DeleteTypeInfo(This,szName) (This)->lpVtbl->DeleteTypeInfo(This,szName) #define ICreateTypeLib2_SetCustData(This,guid,pVarVal) (This)->lpVtbl->SetCustData(This,guid,pVarVal) #define ICreateTypeLib2_SetHelpStringContext(This,dwHelpStringContext) (This)->lpVtbl->SetHelpStringContext(This,dwHelpStringContext) #define ICreateTypeLib2_SetHelpStringDll(This,szFileName) (This)->lpVtbl->SetHelpStringDll(This,szFileName) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ICreateTypeLib2_QueryInterface(ICreateTypeLib2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ICreateTypeLib2_AddRef(ICreateTypeLib2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ICreateTypeLib2_Release(ICreateTypeLib2* This) { return This->lpVtbl->Release(This); } /*** ICreateTypeLib methods ***/ static FORCEINLINE HRESULT ICreateTypeLib2_CreateTypeInfo(ICreateTypeLib2* This,LPOLESTR szName,TYPEKIND tkind,ICreateTypeInfo **ppCTInfo) { return This->lpVtbl->CreateTypeInfo(This,szName,tkind,ppCTInfo); } static FORCEINLINE HRESULT ICreateTypeLib2_SetName(ICreateTypeLib2* This,LPOLESTR szName) { return This->lpVtbl->SetName(This,szName); } static FORCEINLINE HRESULT ICreateTypeLib2_SetVersion(ICreateTypeLib2* This,WORD wMajorVerNum,WORD wMinorVerNum) { return This->lpVtbl->SetVersion(This,wMajorVerNum,wMinorVerNum); } static FORCEINLINE HRESULT ICreateTypeLib2_SetGuid(ICreateTypeLib2* This,REFGUID guid) { return This->lpVtbl->SetGuid(This,guid); } static FORCEINLINE HRESULT ICreateTypeLib2_SetDocString(ICreateTypeLib2* This,LPOLESTR szDoc) { return This->lpVtbl->SetDocString(This,szDoc); } static FORCEINLINE HRESULT ICreateTypeLib2_SetHelpFileName(ICreateTypeLib2* This,LPOLESTR szHelpFileName) { return This->lpVtbl->SetHelpFileName(This,szHelpFileName); } static FORCEINLINE HRESULT ICreateTypeLib2_SetHelpContext(ICreateTypeLib2* This,DWORD dwHelpContext) { return This->lpVtbl->SetHelpContext(This,dwHelpContext); } static FORCEINLINE HRESULT ICreateTypeLib2_SetLcid(ICreateTypeLib2* This,LCID lcid) { return This->lpVtbl->SetLcid(This,lcid); } static FORCEINLINE HRESULT ICreateTypeLib2_SetLibFlags(ICreateTypeLib2* This,UINT uLibFlags) { return This->lpVtbl->SetLibFlags(This,uLibFlags); } static FORCEINLINE HRESULT ICreateTypeLib2_SaveAllChanges(ICreateTypeLib2* This) { return This->lpVtbl->SaveAllChanges(This); } /*** ICreateTypeLib2 methods ***/ static FORCEINLINE HRESULT ICreateTypeLib2_DeleteTypeInfo(ICreateTypeLib2* This,LPOLESTR szName) { return This->lpVtbl->DeleteTypeInfo(This,szName); } static FORCEINLINE HRESULT ICreateTypeLib2_SetCustData(ICreateTypeLib2* This,REFGUID guid,VARIANT *pVarVal) { return This->lpVtbl->SetCustData(This,guid,pVarVal); } static FORCEINLINE HRESULT ICreateTypeLib2_SetHelpStringContext(ICreateTypeLib2* This,ULONG dwHelpStringContext) { return This->lpVtbl->SetHelpStringContext(This,dwHelpStringContext); } static FORCEINLINE HRESULT ICreateTypeLib2_SetHelpStringDll(ICreateTypeLib2* This,LPOLESTR szFileName) { return This->lpVtbl->SetHelpStringDll(This,szFileName); } #endif #endif #endif #endif /* __ICreateTypeLib2_INTERFACE_DEFINED__ */ #endif #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) /***************************************************************************** * IDispatch interface */ #ifndef __IDispatch_INTERFACE_DEFINED__ #define __IDispatch_INTERFACE_DEFINED__ 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) DEFINE_GUID(IID_IDispatch, 0x00020400, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("00020400-0000-0000-c000-000000000046") IDispatch : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetTypeInfoCount( UINT *pctinfo) = 0; virtual HRESULT STDMETHODCALLTYPE GetTypeInfo( UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo) = 0; virtual HRESULT STDMETHODCALLTYPE GetIDsOfNames( REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId) = 0; virtual HRESULT STDMETHODCALLTYPE Invoke( DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IDispatch, 0x00020400, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IDispatchVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IDispatch *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IDispatch *This); ULONG (STDMETHODCALLTYPE *Release)( IDispatch *This); /*** IDispatch methods ***/ HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)( IDispatch *This, UINT *pctinfo); HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( IDispatch *This, UINT iTInfo, LCID lcid, ITypeInfo **ppTInfo); HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( IDispatch *This, REFIID riid, LPOLESTR *rgszNames, UINT cNames, LCID lcid, DISPID *rgDispId); HRESULT (STDMETHODCALLTYPE *Invoke)( IDispatch *This, DISPID dispIdMember, REFIID riid, LCID lcid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr); END_INTERFACE } IDispatchVtbl; interface IDispatch { CONST_VTBL IDispatchVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IDispatch_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IDispatch_AddRef(This) (This)->lpVtbl->AddRef(This) #define IDispatch_Release(This) (This)->lpVtbl->Release(This) /*** IDispatch methods ***/ #define IDispatch_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo) #define IDispatch_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo) #define IDispatch_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) #define IDispatch_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IDispatch_QueryInterface(IDispatch* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IDispatch_AddRef(IDispatch* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IDispatch_Release(IDispatch* This) { return This->lpVtbl->Release(This); } /*** IDispatch methods ***/ static FORCEINLINE HRESULT IDispatch_GetTypeInfoCount(IDispatch* This,UINT *pctinfo) { return This->lpVtbl->GetTypeInfoCount(This,pctinfo); } static FORCEINLINE HRESULT IDispatch_GetTypeInfo(IDispatch* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) { return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo); } static FORCEINLINE HRESULT IDispatch_GetIDsOfNames(IDispatch* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) { return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId); } static FORCEINLINE HRESULT IDispatch_Invoke(IDispatch* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); } #endif #endif #endif HRESULT STDMETHODCALLTYPE 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( IRpcStubBuffer* This, 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); #endif /* __IDispatch_INTERFACE_DEFINED__ */ /***************************************************************************** * IEnumVARIANT interface */ #ifndef __IEnumVARIANT_INTERFACE_DEFINED__ #define __IEnumVARIANT_INTERFACE_DEFINED__ typedef IEnumVARIANT *LPENUMVARIANT; DEFINE_GUID(IID_IEnumVARIANT, 0x00020404, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("00020404-0000-0000-c000-000000000046") IEnumVARIANT : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Next( ULONG celt, VARIANT *rgVar, ULONG *pCeltFetched) = 0; virtual HRESULT STDMETHODCALLTYPE Skip( ULONG celt) = 0; virtual HRESULT STDMETHODCALLTYPE Reset( ) = 0; virtual HRESULT STDMETHODCALLTYPE Clone( IEnumVARIANT **ppEnum) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IEnumVARIANT, 0x00020404, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IEnumVARIANTVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IEnumVARIANT *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IEnumVARIANT *This); ULONG (STDMETHODCALLTYPE *Release)( IEnumVARIANT *This); /*** IEnumVARIANT methods ***/ HRESULT (STDMETHODCALLTYPE *Next)( IEnumVARIANT *This, ULONG celt, VARIANT *rgVar, ULONG *pCeltFetched); HRESULT (STDMETHODCALLTYPE *Skip)( IEnumVARIANT *This, ULONG celt); HRESULT (STDMETHODCALLTYPE *Reset)( IEnumVARIANT *This); HRESULT (STDMETHODCALLTYPE *Clone)( IEnumVARIANT *This, IEnumVARIANT **ppEnum); END_INTERFACE } IEnumVARIANTVtbl; interface IEnumVARIANT { CONST_VTBL IEnumVARIANTVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IEnumVARIANT_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IEnumVARIANT_AddRef(This) (This)->lpVtbl->AddRef(This) #define IEnumVARIANT_Release(This) (This)->lpVtbl->Release(This) /*** IEnumVARIANT methods ***/ #define IEnumVARIANT_Next(This,celt,rgVar,pCeltFetched) (This)->lpVtbl->Next(This,celt,rgVar,pCeltFetched) #define IEnumVARIANT_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) #define IEnumVARIANT_Reset(This) (This)->lpVtbl->Reset(This) #define IEnumVARIANT_Clone(This,ppEnum) (This)->lpVtbl->Clone(This,ppEnum) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IEnumVARIANT_QueryInterface(IEnumVARIANT* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IEnumVARIANT_AddRef(IEnumVARIANT* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IEnumVARIANT_Release(IEnumVARIANT* This) { return This->lpVtbl->Release(This); } /*** IEnumVARIANT methods ***/ static FORCEINLINE HRESULT IEnumVARIANT_Next(IEnumVARIANT* This,ULONG celt,VARIANT *rgVar,ULONG *pCeltFetched) { return This->lpVtbl->Next(This,celt,rgVar,pCeltFetched); } static FORCEINLINE HRESULT IEnumVARIANT_Skip(IEnumVARIANT* This,ULONG celt) { return This->lpVtbl->Skip(This,celt); } static FORCEINLINE HRESULT IEnumVARIANT_Reset(IEnumVARIANT* This) { return This->lpVtbl->Reset(This); } static FORCEINLINE HRESULT IEnumVARIANT_Clone(IEnumVARIANT* This,IEnumVARIANT **ppEnum) { return This->lpVtbl->Clone(This,ppEnum); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IEnumVARIANT_RemoteNext_Proxy( IEnumVARIANT* This, ULONG celt, VARIANT *rgVar, ULONG *pCeltFetched); void __RPC_STUB IEnumVARIANT_RemoteNext_Stub( IRpcStubBuffer* This, 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); #endif /* __IEnumVARIANT_INTERFACE_DEFINED__ */ /***************************************************************************** * ITypeComp interface */ #ifndef __ITypeComp_INTERFACE_DEFINED__ #define __ITypeComp_INTERFACE_DEFINED__ typedef ITypeComp *LPTYPECOMP; typedef enum tagDESCKIND { DESCKIND_NONE = 0, DESCKIND_FUNCDESC = 1, DESCKIND_VARDESC = 2, DESCKIND_TYPECOMP = 3, DESCKIND_IMPLICITAPPOBJ = 4, DESCKIND_MAX = 5 } DESCKIND; typedef union tagBINDPTR { FUNCDESC *lpfuncdesc; VARDESC *lpvardesc; ITypeComp *lptcomp; } BINDPTR; typedef union tagBINDPTR *LPBINDPTR; DEFINE_GUID(IID_ITypeComp, 0x00020403, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("00020403-0000-0000-c000-000000000046") ITypeComp : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Bind( LPOLESTR szName, ULONG lHashVal, WORD wFlags, ITypeInfo **ppTInfo, DESCKIND *pDescKind, BINDPTR *pBindPtr) = 0; virtual HRESULT STDMETHODCALLTYPE BindType( LPOLESTR szName, ULONG lHashVal, ITypeInfo **ppTInfo, ITypeComp **ppTComp) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITypeComp, 0x00020403, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct ITypeCompVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITypeComp *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITypeComp *This); ULONG (STDMETHODCALLTYPE *Release)( ITypeComp *This); /*** ITypeComp methods ***/ HRESULT (STDMETHODCALLTYPE *Bind)( ITypeComp *This, LPOLESTR szName, ULONG lHashVal, WORD wFlags, ITypeInfo **ppTInfo, DESCKIND *pDescKind, BINDPTR *pBindPtr); HRESULT (STDMETHODCALLTYPE *BindType)( ITypeComp *This, LPOLESTR szName, ULONG lHashVal, ITypeInfo **ppTInfo, ITypeComp **ppTComp); END_INTERFACE } ITypeCompVtbl; interface ITypeComp { CONST_VTBL ITypeCompVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITypeComp_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITypeComp_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITypeComp_Release(This) (This)->lpVtbl->Release(This) /*** ITypeComp methods ***/ #define ITypeComp_Bind(This,szName,lHashVal,wFlags,ppTInfo,pDescKind,pBindPtr) (This)->lpVtbl->Bind(This,szName,lHashVal,wFlags,ppTInfo,pDescKind,pBindPtr) #define ITypeComp_BindType(This,szName,lHashVal,ppTInfo,ppTComp) (This)->lpVtbl->BindType(This,szName,lHashVal,ppTInfo,ppTComp) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ITypeComp_QueryInterface(ITypeComp* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ITypeComp_AddRef(ITypeComp* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ITypeComp_Release(ITypeComp* This) { return This->lpVtbl->Release(This); } /*** ITypeComp methods ***/ static FORCEINLINE HRESULT ITypeComp_Bind(ITypeComp* This,LPOLESTR szName,ULONG lHashVal,WORD wFlags,ITypeInfo **ppTInfo,DESCKIND *pDescKind,BINDPTR *pBindPtr) { return This->lpVtbl->Bind(This,szName,lHashVal,wFlags,ppTInfo,pDescKind,pBindPtr); } static FORCEINLINE HRESULT ITypeComp_BindType(ITypeComp* This,LPOLESTR szName,ULONG lHashVal,ITypeInfo **ppTInfo,ITypeComp **ppTComp) { return This->lpVtbl->BindType(This,szName,lHashVal,ppTInfo,ppTComp); } #endif #endif #endif HRESULT STDMETHODCALLTYPE 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( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeComp_RemoteBindType_Proxy( ITypeComp* This, LPOLESTR szName, ULONG lHashVal, ITypeInfo **ppTInfo); void __RPC_STUB ITypeComp_RemoteBindType_Stub( IRpcStubBuffer* This, 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_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); #endif /* __ITypeComp_INTERFACE_DEFINED__ */ #endif #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) /***************************************************************************** * ITypeInfo interface */ #ifndef __ITypeInfo_INTERFACE_DEFINED__ #define __ITypeInfo_INTERFACE_DEFINED__ typedef ITypeInfo *LPTYPEINFO; DEFINE_GUID(IID_ITypeInfo, 0x00020401, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("00020401-0000-0000-c000-000000000046") ITypeInfo : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetTypeAttr( TYPEATTR **ppTypeAttr) = 0; virtual HRESULT STDMETHODCALLTYPE GetTypeComp( ITypeComp **ppTComp) = 0; virtual HRESULT STDMETHODCALLTYPE GetFuncDesc( UINT index, FUNCDESC **ppFuncDesc) = 0; virtual HRESULT STDMETHODCALLTYPE GetVarDesc( UINT index, VARDESC **ppVarDesc) = 0; virtual HRESULT STDMETHODCALLTYPE GetNames( MEMBERID memid, BSTR *rgBstrNames, UINT cMaxNames, UINT *pcNames) = 0; virtual HRESULT STDMETHODCALLTYPE GetRefTypeOfImplType( UINT index, HREFTYPE *pRefType) = 0; virtual HRESULT STDMETHODCALLTYPE GetImplTypeFlags( UINT index, INT *pImplTypeFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetIDsOfNames( LPOLESTR *rgszNames, UINT cNames, MEMBERID *pMemId) = 0; virtual HRESULT STDMETHODCALLTYPE Invoke( PVOID pvInstance, MEMBERID memid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr) = 0; virtual HRESULT STDMETHODCALLTYPE GetDocumentation( MEMBERID memid, BSTR *pBstrName, BSTR *pBstrDocString, DWORD *pdwHelpContext, BSTR *pBstrHelpFile) = 0; virtual HRESULT STDMETHODCALLTYPE GetDllEntry( MEMBERID memid, INVOKEKIND invKind, BSTR *pBstrDllName, BSTR *pBstrName, WORD *pwOrdinal) = 0; virtual HRESULT STDMETHODCALLTYPE GetRefTypeInfo( HREFTYPE hRefType, ITypeInfo **ppTInfo) = 0; virtual HRESULT STDMETHODCALLTYPE AddressOfMember( MEMBERID memid, INVOKEKIND invKind, PVOID *ppv) = 0; virtual HRESULT STDMETHODCALLTYPE CreateInstance( IUnknown *pUnkOuter, REFIID riid, PVOID *ppvObj) = 0; virtual HRESULT STDMETHODCALLTYPE GetMops( MEMBERID memid, BSTR *pBstrMops) = 0; virtual HRESULT STDMETHODCALLTYPE GetContainingTypeLib( ITypeLib **ppTLib, UINT *pIndex) = 0; virtual void STDMETHODCALLTYPE ReleaseTypeAttr( TYPEATTR *pTypeAttr) = 0; virtual void STDMETHODCALLTYPE ReleaseFuncDesc( FUNCDESC *pFuncDesc) = 0; virtual void STDMETHODCALLTYPE ReleaseVarDesc( VARDESC *pVarDesc) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITypeInfo, 0x00020401, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct ITypeInfoVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITypeInfo *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITypeInfo *This); ULONG (STDMETHODCALLTYPE *Release)( ITypeInfo *This); /*** ITypeInfo methods ***/ HRESULT (STDMETHODCALLTYPE *GetTypeAttr)( ITypeInfo *This, TYPEATTR **ppTypeAttr); HRESULT (STDMETHODCALLTYPE *GetTypeComp)( ITypeInfo *This, ITypeComp **ppTComp); HRESULT (STDMETHODCALLTYPE *GetFuncDesc)( ITypeInfo *This, UINT index, FUNCDESC **ppFuncDesc); HRESULT (STDMETHODCALLTYPE *GetVarDesc)( ITypeInfo *This, UINT index, VARDESC **ppVarDesc); HRESULT (STDMETHODCALLTYPE *GetNames)( ITypeInfo *This, MEMBERID memid, BSTR *rgBstrNames, UINT cMaxNames, UINT *pcNames); HRESULT (STDMETHODCALLTYPE *GetRefTypeOfImplType)( ITypeInfo *This, UINT index, HREFTYPE *pRefType); HRESULT (STDMETHODCALLTYPE *GetImplTypeFlags)( ITypeInfo *This, UINT index, INT *pImplTypeFlags); HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( ITypeInfo *This, LPOLESTR *rgszNames, UINT cNames, MEMBERID *pMemId); HRESULT (STDMETHODCALLTYPE *Invoke)( ITypeInfo *This, PVOID pvInstance, MEMBERID memid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr); HRESULT (STDMETHODCALLTYPE *GetDocumentation)( ITypeInfo *This, MEMBERID memid, BSTR *pBstrName, BSTR *pBstrDocString, DWORD *pdwHelpContext, BSTR *pBstrHelpFile); HRESULT (STDMETHODCALLTYPE *GetDllEntry)( ITypeInfo *This, MEMBERID memid, INVOKEKIND invKind, BSTR *pBstrDllName, BSTR *pBstrName, WORD *pwOrdinal); HRESULT (STDMETHODCALLTYPE *GetRefTypeInfo)( ITypeInfo *This, HREFTYPE hRefType, ITypeInfo **ppTInfo); HRESULT (STDMETHODCALLTYPE *AddressOfMember)( ITypeInfo *This, MEMBERID memid, INVOKEKIND invKind, PVOID *ppv); HRESULT (STDMETHODCALLTYPE *CreateInstance)( ITypeInfo *This, IUnknown *pUnkOuter, REFIID riid, PVOID *ppvObj); HRESULT (STDMETHODCALLTYPE *GetMops)( ITypeInfo *This, MEMBERID memid, BSTR *pBstrMops); HRESULT (STDMETHODCALLTYPE *GetContainingTypeLib)( ITypeInfo *This, ITypeLib **ppTLib, UINT *pIndex); void (STDMETHODCALLTYPE *ReleaseTypeAttr)( ITypeInfo *This, TYPEATTR *pTypeAttr); void (STDMETHODCALLTYPE *ReleaseFuncDesc)( ITypeInfo *This, FUNCDESC *pFuncDesc); void (STDMETHODCALLTYPE *ReleaseVarDesc)( ITypeInfo *This, VARDESC *pVarDesc); END_INTERFACE } ITypeInfoVtbl; interface ITypeInfo { CONST_VTBL ITypeInfoVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITypeInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITypeInfo_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITypeInfo_Release(This) (This)->lpVtbl->Release(This) /*** ITypeInfo methods ***/ #define ITypeInfo_GetTypeAttr(This,ppTypeAttr) (This)->lpVtbl->GetTypeAttr(This,ppTypeAttr) #define ITypeInfo_GetTypeComp(This,ppTComp) (This)->lpVtbl->GetTypeComp(This,ppTComp) #define ITypeInfo_GetFuncDesc(This,index,ppFuncDesc) (This)->lpVtbl->GetFuncDesc(This,index,ppFuncDesc) #define ITypeInfo_GetVarDesc(This,index,ppVarDesc) (This)->lpVtbl->GetVarDesc(This,index,ppVarDesc) #define ITypeInfo_GetNames(This,memid,rgBstrNames,cMaxNames,pcNames) (This)->lpVtbl->GetNames(This,memid,rgBstrNames,cMaxNames,pcNames) #define ITypeInfo_GetRefTypeOfImplType(This,index,pRefType) (This)->lpVtbl->GetRefTypeOfImplType(This,index,pRefType) #define ITypeInfo_GetImplTypeFlags(This,index,pImplTypeFlags) (This)->lpVtbl->GetImplTypeFlags(This,index,pImplTypeFlags) #define ITypeInfo_GetIDsOfNames(This,rgszNames,cNames,pMemId) (This)->lpVtbl->GetIDsOfNames(This,rgszNames,cNames,pMemId) #define ITypeInfo_Invoke(This,pvInstance,memid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,pvInstance,memid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) #define ITypeInfo_GetDocumentation(This,memid,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile) (This)->lpVtbl->GetDocumentation(This,memid,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile) #define ITypeInfo_GetDllEntry(This,memid,invKind,pBstrDllName,pBstrName,pwOrdinal) (This)->lpVtbl->GetDllEntry(This,memid,invKind,pBstrDllName,pBstrName,pwOrdinal) #define ITypeInfo_GetRefTypeInfo(This,hRefType,ppTInfo) (This)->lpVtbl->GetRefTypeInfo(This,hRefType,ppTInfo) #define ITypeInfo_AddressOfMember(This,memid,invKind,ppv) (This)->lpVtbl->AddressOfMember(This,memid,invKind,ppv) #define ITypeInfo_CreateInstance(This,pUnkOuter,riid,ppvObj) (This)->lpVtbl->CreateInstance(This,pUnkOuter,riid,ppvObj) #define ITypeInfo_GetMops(This,memid,pBstrMops) (This)->lpVtbl->GetMops(This,memid,pBstrMops) #define ITypeInfo_GetContainingTypeLib(This,ppTLib,pIndex) (This)->lpVtbl->GetContainingTypeLib(This,ppTLib,pIndex) #define ITypeInfo_ReleaseTypeAttr(This,pTypeAttr) (This)->lpVtbl->ReleaseTypeAttr(This,pTypeAttr) #define ITypeInfo_ReleaseFuncDesc(This,pFuncDesc) (This)->lpVtbl->ReleaseFuncDesc(This,pFuncDesc) #define ITypeInfo_ReleaseVarDesc(This,pVarDesc) (This)->lpVtbl->ReleaseVarDesc(This,pVarDesc) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ITypeInfo_QueryInterface(ITypeInfo* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ITypeInfo_AddRef(ITypeInfo* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ITypeInfo_Release(ITypeInfo* This) { return This->lpVtbl->Release(This); } /*** ITypeInfo methods ***/ static FORCEINLINE HRESULT ITypeInfo_GetTypeAttr(ITypeInfo* This,TYPEATTR **ppTypeAttr) { return This->lpVtbl->GetTypeAttr(This,ppTypeAttr); } static FORCEINLINE HRESULT ITypeInfo_GetTypeComp(ITypeInfo* This,ITypeComp **ppTComp) { return This->lpVtbl->GetTypeComp(This,ppTComp); } static FORCEINLINE HRESULT ITypeInfo_GetFuncDesc(ITypeInfo* This,UINT index,FUNCDESC **ppFuncDesc) { return This->lpVtbl->GetFuncDesc(This,index,ppFuncDesc); } static FORCEINLINE HRESULT ITypeInfo_GetVarDesc(ITypeInfo* This,UINT index,VARDESC **ppVarDesc) { return This->lpVtbl->GetVarDesc(This,index,ppVarDesc); } static FORCEINLINE HRESULT ITypeInfo_GetNames(ITypeInfo* This,MEMBERID memid,BSTR *rgBstrNames,UINT cMaxNames,UINT *pcNames) { return This->lpVtbl->GetNames(This,memid,rgBstrNames,cMaxNames,pcNames); } static FORCEINLINE HRESULT ITypeInfo_GetRefTypeOfImplType(ITypeInfo* This,UINT index,HREFTYPE *pRefType) { return This->lpVtbl->GetRefTypeOfImplType(This,index,pRefType); } static FORCEINLINE HRESULT ITypeInfo_GetImplTypeFlags(ITypeInfo* This,UINT index,INT *pImplTypeFlags) { return This->lpVtbl->GetImplTypeFlags(This,index,pImplTypeFlags); } static FORCEINLINE HRESULT ITypeInfo_GetIDsOfNames(ITypeInfo* This,LPOLESTR *rgszNames,UINT cNames,MEMBERID *pMemId) { return This->lpVtbl->GetIDsOfNames(This,rgszNames,cNames,pMemId); } static FORCEINLINE HRESULT ITypeInfo_Invoke(ITypeInfo* This,PVOID pvInstance,MEMBERID memid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { return This->lpVtbl->Invoke(This,pvInstance,memid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); } static FORCEINLINE HRESULT ITypeInfo_GetDocumentation(ITypeInfo* This,MEMBERID memid,BSTR *pBstrName,BSTR *pBstrDocString,DWORD *pdwHelpContext,BSTR *pBstrHelpFile) { return This->lpVtbl->GetDocumentation(This,memid,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile); } static FORCEINLINE HRESULT ITypeInfo_GetDllEntry(ITypeInfo* This,MEMBERID memid,INVOKEKIND invKind,BSTR *pBstrDllName,BSTR *pBstrName,WORD *pwOrdinal) { return This->lpVtbl->GetDllEntry(This,memid,invKind,pBstrDllName,pBstrName,pwOrdinal); } static FORCEINLINE HRESULT ITypeInfo_GetRefTypeInfo(ITypeInfo* This,HREFTYPE hRefType,ITypeInfo **ppTInfo) { return This->lpVtbl->GetRefTypeInfo(This,hRefType,ppTInfo); } static FORCEINLINE HRESULT ITypeInfo_AddressOfMember(ITypeInfo* This,MEMBERID memid,INVOKEKIND invKind,PVOID *ppv) { return This->lpVtbl->AddressOfMember(This,memid,invKind,ppv); } static FORCEINLINE HRESULT ITypeInfo_CreateInstance(ITypeInfo* This,IUnknown *pUnkOuter,REFIID riid,PVOID *ppvObj) { return This->lpVtbl->CreateInstance(This,pUnkOuter,riid,ppvObj); } static FORCEINLINE HRESULT ITypeInfo_GetMops(ITypeInfo* This,MEMBERID memid,BSTR *pBstrMops) { return This->lpVtbl->GetMops(This,memid,pBstrMops); } static FORCEINLINE HRESULT ITypeInfo_GetContainingTypeLib(ITypeInfo* This,ITypeLib **ppTLib,UINT *pIndex) { return This->lpVtbl->GetContainingTypeLib(This,ppTLib,pIndex); } static FORCEINLINE void ITypeInfo_ReleaseTypeAttr(ITypeInfo* This,TYPEATTR *pTypeAttr) { This->lpVtbl->ReleaseTypeAttr(This,pTypeAttr); } static FORCEINLINE void ITypeInfo_ReleaseFuncDesc(ITypeInfo* This,FUNCDESC *pFuncDesc) { This->lpVtbl->ReleaseFuncDesc(This,pFuncDesc); } static FORCEINLINE void ITypeInfo_ReleaseVarDesc(ITypeInfo* This,VARDESC *pVarDesc) { This->lpVtbl->ReleaseVarDesc(This,pVarDesc); } #endif #endif #endif HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetTypeAttr_Proxy( ITypeInfo* This, LPTYPEATTR *ppTypeAttr, CLEANLOCALSTORAGE *pDummy); void __RPC_STUB ITypeInfo_RemoteGetTypeAttr_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetFuncDesc_Proxy( ITypeInfo* This, UINT index, LPFUNCDESC *ppFuncDesc, CLEANLOCALSTORAGE *pDummy); void __RPC_STUB ITypeInfo_RemoteGetFuncDesc_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetVarDesc_Proxy( ITypeInfo* This, UINT index, LPVARDESC *ppVarDesc, CLEANLOCALSTORAGE *pDummy); void __RPC_STUB ITypeInfo_RemoteGetVarDesc_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetNames_Proxy( ITypeInfo* This, MEMBERID memid, BSTR *rgBstrNames, UINT cMaxNames, UINT *pcNames); void __RPC_STUB ITypeInfo_RemoteGetNames_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeInfo_LocalGetIDsOfNames_Proxy( ITypeInfo* This); void __RPC_STUB ITypeInfo_LocalGetIDsOfNames_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeInfo_LocalInvoke_Proxy( ITypeInfo* This); void __RPC_STUB ITypeInfo_LocalInvoke_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetDocumentation_Proxy( ITypeInfo* This, MEMBERID memid, DWORD refPtrFlags, BSTR *pBstrName, BSTR *pBstrDocString, DWORD *pdwHelpContext, BSTR *pBstrHelpFile); void __RPC_STUB ITypeInfo_RemoteGetDocumentation_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetDllEntry_Proxy( ITypeInfo* This, MEMBERID memid, INVOKEKIND invKind, DWORD refPtrFlags, BSTR *pBstrDllName, BSTR *pBstrName, WORD *pwOrdinal); void __RPC_STUB ITypeInfo_RemoteGetDllEntry_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeInfo_LocalAddressOfMember_Proxy( ITypeInfo* This); void __RPC_STUB ITypeInfo_LocalAddressOfMember_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteCreateInstance_Proxy( ITypeInfo* This, REFIID riid, IUnknown **ppvObj); void __RPC_STUB ITypeInfo_RemoteCreateInstance_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeInfo_RemoteGetContainingTypeLib_Proxy( ITypeInfo* This, ITypeLib **ppTLib, UINT *pIndex); void __RPC_STUB ITypeInfo_RemoteGetContainingTypeLib_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeInfo_LocalReleaseTypeAttr_Proxy( ITypeInfo* This); void __RPC_STUB ITypeInfo_LocalReleaseTypeAttr_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeInfo_LocalReleaseFuncDesc_Proxy( ITypeInfo* This); void __RPC_STUB ITypeInfo_LocalReleaseFuncDesc_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeInfo_LocalReleaseVarDesc_Proxy( ITypeInfo* This); void __RPC_STUB ITypeInfo_LocalReleaseVarDesc_Stub( IRpcStubBuffer* This, 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_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_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_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_GetIDsOfNames_Proxy( ITypeInfo* This, LPOLESTR *rgszNames, UINT cNames, MEMBERID *pMemId); HRESULT __RPC_STUB ITypeInfo_GetIDsOfNames_Stub( ITypeInfo* This); 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_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_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_AddressOfMember_Proxy( ITypeInfo* This, MEMBERID memid, INVOKEKIND invKind, PVOID *ppv); HRESULT __RPC_STUB ITypeInfo_AddressOfMember_Stub( ITypeInfo* This); 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_GetContainingTypeLib_Proxy( ITypeInfo* This, ITypeLib **ppTLib, UINT *pIndex); HRESULT __RPC_STUB ITypeInfo_GetContainingTypeLib_Stub( ITypeInfo* This, ITypeLib **ppTLib, UINT *pIndex); void CALLBACK ITypeInfo_ReleaseTypeAttr_Proxy( ITypeInfo* This, TYPEATTR *pTypeAttr); HRESULT __RPC_STUB ITypeInfo_ReleaseTypeAttr_Stub( ITypeInfo* This); void CALLBACK ITypeInfo_ReleaseFuncDesc_Proxy( ITypeInfo* This, FUNCDESC *pFuncDesc); HRESULT __RPC_STUB ITypeInfo_ReleaseFuncDesc_Stub( ITypeInfo* This); void CALLBACK ITypeInfo_ReleaseVarDesc_Proxy( ITypeInfo* This, VARDESC *pVarDesc); HRESULT __RPC_STUB ITypeInfo_ReleaseVarDesc_Stub( ITypeInfo* This); #endif /* __ITypeInfo_INTERFACE_DEFINED__ */ /***************************************************************************** * ITypeInfo2 interface */ #ifndef __ITypeInfo2_INTERFACE_DEFINED__ #define __ITypeInfo2_INTERFACE_DEFINED__ typedef ITypeInfo2 *LPTYPEINFO2; DEFINE_GUID(IID_ITypeInfo2, 0x00020412, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("00020412-0000-0000-c000-000000000046") ITypeInfo2 : public ITypeInfo { virtual HRESULT STDMETHODCALLTYPE GetTypeKind( TYPEKIND *pTypeKind) = 0; virtual HRESULT STDMETHODCALLTYPE GetTypeFlags( ULONG *pTypeFlags) = 0; virtual HRESULT STDMETHODCALLTYPE GetFuncIndexOfMemId( MEMBERID memid, INVOKEKIND invKind, UINT *pFuncIndex) = 0; virtual HRESULT STDMETHODCALLTYPE GetVarIndexOfMemId( MEMBERID memid, UINT *pVarIndex) = 0; virtual HRESULT STDMETHODCALLTYPE GetCustData( REFGUID guid, VARIANT *pVarVal) = 0; virtual HRESULT STDMETHODCALLTYPE GetFuncCustData( UINT index, REFGUID guid, VARIANT *pVarVal) = 0; virtual HRESULT STDMETHODCALLTYPE GetParamCustData( UINT indexFunc, UINT indexParam, REFGUID guid, VARIANT *pVarVal) = 0; virtual HRESULT STDMETHODCALLTYPE GetVarCustData( UINT index, REFGUID guid, VARIANT *pVarVal) = 0; virtual HRESULT STDMETHODCALLTYPE GetImplTypeCustData( UINT index, REFGUID guid, VARIANT *pVarVal) = 0; virtual HRESULT STDMETHODCALLTYPE GetDocumentation2( MEMBERID memid, LCID lcid, BSTR *pbstrHelpString, DWORD *pdwHelpStringContext, BSTR *pbstrHelpStringDll) = 0; virtual HRESULT STDMETHODCALLTYPE GetAllCustData( CUSTDATA *pCustData) = 0; virtual HRESULT STDMETHODCALLTYPE GetAllFuncCustData( UINT index, CUSTDATA *pCustData) = 0; virtual HRESULT STDMETHODCALLTYPE GetAllParamCustData( UINT indexFunc, UINT indexParam, CUSTDATA *pCustData) = 0; virtual HRESULT STDMETHODCALLTYPE GetAllVarCustData( UINT index, CUSTDATA *pCustData) = 0; virtual HRESULT STDMETHODCALLTYPE GetAllImplTypeCustData( UINT index, CUSTDATA *pCustData) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITypeInfo2, 0x00020412, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct ITypeInfo2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITypeInfo2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITypeInfo2 *This); ULONG (STDMETHODCALLTYPE *Release)( ITypeInfo2 *This); /*** ITypeInfo methods ***/ HRESULT (STDMETHODCALLTYPE *GetTypeAttr)( ITypeInfo2 *This, TYPEATTR **ppTypeAttr); HRESULT (STDMETHODCALLTYPE *GetTypeComp)( ITypeInfo2 *This, ITypeComp **ppTComp); HRESULT (STDMETHODCALLTYPE *GetFuncDesc)( ITypeInfo2 *This, UINT index, FUNCDESC **ppFuncDesc); HRESULT (STDMETHODCALLTYPE *GetVarDesc)( ITypeInfo2 *This, UINT index, VARDESC **ppVarDesc); HRESULT (STDMETHODCALLTYPE *GetNames)( ITypeInfo2 *This, MEMBERID memid, BSTR *rgBstrNames, UINT cMaxNames, UINT *pcNames); HRESULT (STDMETHODCALLTYPE *GetRefTypeOfImplType)( ITypeInfo2 *This, UINT index, HREFTYPE *pRefType); HRESULT (STDMETHODCALLTYPE *GetImplTypeFlags)( ITypeInfo2 *This, UINT index, INT *pImplTypeFlags); HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)( ITypeInfo2 *This, LPOLESTR *rgszNames, UINT cNames, MEMBERID *pMemId); HRESULT (STDMETHODCALLTYPE *Invoke)( ITypeInfo2 *This, PVOID pvInstance, MEMBERID memid, WORD wFlags, DISPPARAMS *pDispParams, VARIANT *pVarResult, EXCEPINFO *pExcepInfo, UINT *puArgErr); HRESULT (STDMETHODCALLTYPE *GetDocumentation)( ITypeInfo2 *This, MEMBERID memid, BSTR *pBstrName, BSTR *pBstrDocString, DWORD *pdwHelpContext, BSTR *pBstrHelpFile); HRESULT (STDMETHODCALLTYPE *GetDllEntry)( ITypeInfo2 *This, MEMBERID memid, INVOKEKIND invKind, BSTR *pBstrDllName, BSTR *pBstrName, WORD *pwOrdinal); HRESULT (STDMETHODCALLTYPE *GetRefTypeInfo)( ITypeInfo2 *This, HREFTYPE hRefType, ITypeInfo **ppTInfo); HRESULT (STDMETHODCALLTYPE *AddressOfMember)( ITypeInfo2 *This, MEMBERID memid, INVOKEKIND invKind, PVOID *ppv); HRESULT (STDMETHODCALLTYPE *CreateInstance)( ITypeInfo2 *This, IUnknown *pUnkOuter, REFIID riid, PVOID *ppvObj); HRESULT (STDMETHODCALLTYPE *GetMops)( ITypeInfo2 *This, MEMBERID memid, BSTR *pBstrMops); HRESULT (STDMETHODCALLTYPE *GetContainingTypeLib)( ITypeInfo2 *This, ITypeLib **ppTLib, UINT *pIndex); void (STDMETHODCALLTYPE *ReleaseTypeAttr)( ITypeInfo2 *This, TYPEATTR *pTypeAttr); void (STDMETHODCALLTYPE *ReleaseFuncDesc)( ITypeInfo2 *This, FUNCDESC *pFuncDesc); void (STDMETHODCALLTYPE *ReleaseVarDesc)( ITypeInfo2 *This, VARDESC *pVarDesc); /*** ITypeInfo2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetTypeKind)( ITypeInfo2 *This, TYPEKIND *pTypeKind); HRESULT (STDMETHODCALLTYPE *GetTypeFlags)( ITypeInfo2 *This, ULONG *pTypeFlags); HRESULT (STDMETHODCALLTYPE *GetFuncIndexOfMemId)( ITypeInfo2 *This, MEMBERID memid, INVOKEKIND invKind, UINT *pFuncIndex); HRESULT (STDMETHODCALLTYPE *GetVarIndexOfMemId)( ITypeInfo2 *This, MEMBERID memid, UINT *pVarIndex); HRESULT (STDMETHODCALLTYPE *GetCustData)( ITypeInfo2 *This, REFGUID guid, VARIANT *pVarVal); HRESULT (STDMETHODCALLTYPE *GetFuncCustData)( ITypeInfo2 *This, UINT index, REFGUID guid, VARIANT *pVarVal); HRESULT (STDMETHODCALLTYPE *GetParamCustData)( ITypeInfo2 *This, UINT indexFunc, UINT indexParam, REFGUID guid, VARIANT *pVarVal); HRESULT (STDMETHODCALLTYPE *GetVarCustData)( ITypeInfo2 *This, UINT index, REFGUID guid, VARIANT *pVarVal); HRESULT (STDMETHODCALLTYPE *GetImplTypeCustData)( ITypeInfo2 *This, UINT index, REFGUID guid, VARIANT *pVarVal); HRESULT (STDMETHODCALLTYPE *GetDocumentation2)( ITypeInfo2 *This, MEMBERID memid, LCID lcid, BSTR *pbstrHelpString, DWORD *pdwHelpStringContext, BSTR *pbstrHelpStringDll); HRESULT (STDMETHODCALLTYPE *GetAllCustData)( ITypeInfo2 *This, CUSTDATA *pCustData); HRESULT (STDMETHODCALLTYPE *GetAllFuncCustData)( ITypeInfo2 *This, UINT index, CUSTDATA *pCustData); HRESULT (STDMETHODCALLTYPE *GetAllParamCustData)( ITypeInfo2 *This, UINT indexFunc, UINT indexParam, CUSTDATA *pCustData); HRESULT (STDMETHODCALLTYPE *GetAllVarCustData)( ITypeInfo2 *This, UINT index, CUSTDATA *pCustData); HRESULT (STDMETHODCALLTYPE *GetAllImplTypeCustData)( ITypeInfo2 *This, UINT index, CUSTDATA *pCustData); END_INTERFACE } ITypeInfo2Vtbl; interface ITypeInfo2 { CONST_VTBL ITypeInfo2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITypeInfo2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITypeInfo2_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITypeInfo2_Release(This) (This)->lpVtbl->Release(This) /*** ITypeInfo methods ***/ #define ITypeInfo2_GetTypeAttr(This,ppTypeAttr) (This)->lpVtbl->GetTypeAttr(This,ppTypeAttr) #define ITypeInfo2_GetTypeComp(This,ppTComp) (This)->lpVtbl->GetTypeComp(This,ppTComp) #define ITypeInfo2_GetFuncDesc(This,index,ppFuncDesc) (This)->lpVtbl->GetFuncDesc(This,index,ppFuncDesc) #define ITypeInfo2_GetVarDesc(This,index,ppVarDesc) (This)->lpVtbl->GetVarDesc(This,index,ppVarDesc) #define ITypeInfo2_GetNames(This,memid,rgBstrNames,cMaxNames,pcNames) (This)->lpVtbl->GetNames(This,memid,rgBstrNames,cMaxNames,pcNames) #define ITypeInfo2_GetRefTypeOfImplType(This,index,pRefType) (This)->lpVtbl->GetRefTypeOfImplType(This,index,pRefType) #define ITypeInfo2_GetImplTypeFlags(This,index,pImplTypeFlags) (This)->lpVtbl->GetImplTypeFlags(This,index,pImplTypeFlags) #define ITypeInfo2_GetIDsOfNames(This,rgszNames,cNames,pMemId) (This)->lpVtbl->GetIDsOfNames(This,rgszNames,cNames,pMemId) #define ITypeInfo2_Invoke(This,pvInstance,memid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,pvInstance,memid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) #define ITypeInfo2_GetDocumentation(This,memid,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile) (This)->lpVtbl->GetDocumentation(This,memid,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile) #define ITypeInfo2_GetDllEntry(This,memid,invKind,pBstrDllName,pBstrName,pwOrdinal) (This)->lpVtbl->GetDllEntry(This,memid,invKind,pBstrDllName,pBstrName,pwOrdinal) #define ITypeInfo2_GetRefTypeInfo(This,hRefType,ppTInfo) (This)->lpVtbl->GetRefTypeInfo(This,hRefType,ppTInfo) #define ITypeInfo2_AddressOfMember(This,memid,invKind,ppv) (This)->lpVtbl->AddressOfMember(This,memid,invKind,ppv) #define ITypeInfo2_CreateInstance(This,pUnkOuter,riid,ppvObj) (This)->lpVtbl->CreateInstance(This,pUnkOuter,riid,ppvObj) #define ITypeInfo2_GetMops(This,memid,pBstrMops) (This)->lpVtbl->GetMops(This,memid,pBstrMops) #define ITypeInfo2_GetContainingTypeLib(This,ppTLib,pIndex) (This)->lpVtbl->GetContainingTypeLib(This,ppTLib,pIndex) #define ITypeInfo2_ReleaseTypeAttr(This,pTypeAttr) (This)->lpVtbl->ReleaseTypeAttr(This,pTypeAttr) #define ITypeInfo2_ReleaseFuncDesc(This,pFuncDesc) (This)->lpVtbl->ReleaseFuncDesc(This,pFuncDesc) #define ITypeInfo2_ReleaseVarDesc(This,pVarDesc) (This)->lpVtbl->ReleaseVarDesc(This,pVarDesc) /*** ITypeInfo2 methods ***/ #define ITypeInfo2_GetTypeKind(This,pTypeKind) (This)->lpVtbl->GetTypeKind(This,pTypeKind) #define ITypeInfo2_GetTypeFlags(This,pTypeFlags) (This)->lpVtbl->GetTypeFlags(This,pTypeFlags) #define ITypeInfo2_GetFuncIndexOfMemId(This,memid,invKind,pFuncIndex) (This)->lpVtbl->GetFuncIndexOfMemId(This,memid,invKind,pFuncIndex) #define ITypeInfo2_GetVarIndexOfMemId(This,memid,pVarIndex) (This)->lpVtbl->GetVarIndexOfMemId(This,memid,pVarIndex) #define ITypeInfo2_GetCustData(This,guid,pVarVal) (This)->lpVtbl->GetCustData(This,guid,pVarVal) #define ITypeInfo2_GetFuncCustData(This,index,guid,pVarVal) (This)->lpVtbl->GetFuncCustData(This,index,guid,pVarVal) #define ITypeInfo2_GetParamCustData(This,indexFunc,indexParam,guid,pVarVal) (This)->lpVtbl->GetParamCustData(This,indexFunc,indexParam,guid,pVarVal) #define ITypeInfo2_GetVarCustData(This,index,guid,pVarVal) (This)->lpVtbl->GetVarCustData(This,index,guid,pVarVal) #define ITypeInfo2_GetImplTypeCustData(This,index,guid,pVarVal) (This)->lpVtbl->GetImplTypeCustData(This,index,guid,pVarVal) #define ITypeInfo2_GetDocumentation2(This,memid,lcid,pbstrHelpString,pdwHelpStringContext,pbstrHelpStringDll) (This)->lpVtbl->GetDocumentation2(This,memid,lcid,pbstrHelpString,pdwHelpStringContext,pbstrHelpStringDll) #define ITypeInfo2_GetAllCustData(This,pCustData) (This)->lpVtbl->GetAllCustData(This,pCustData) #define ITypeInfo2_GetAllFuncCustData(This,index,pCustData) (This)->lpVtbl->GetAllFuncCustData(This,index,pCustData) #define ITypeInfo2_GetAllParamCustData(This,indexFunc,indexParam,pCustData) (This)->lpVtbl->GetAllParamCustData(This,indexFunc,indexParam,pCustData) #define ITypeInfo2_GetAllVarCustData(This,index,pCustData) (This)->lpVtbl->GetAllVarCustData(This,index,pCustData) #define ITypeInfo2_GetAllImplTypeCustData(This,index,pCustData) (This)->lpVtbl->GetAllImplTypeCustData(This,index,pCustData) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ITypeInfo2_QueryInterface(ITypeInfo2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ITypeInfo2_AddRef(ITypeInfo2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ITypeInfo2_Release(ITypeInfo2* This) { return This->lpVtbl->Release(This); } /*** ITypeInfo methods ***/ static FORCEINLINE HRESULT ITypeInfo2_GetTypeAttr(ITypeInfo2* This,TYPEATTR **ppTypeAttr) { return This->lpVtbl->GetTypeAttr(This,ppTypeAttr); } static FORCEINLINE HRESULT ITypeInfo2_GetTypeComp(ITypeInfo2* This,ITypeComp **ppTComp) { return This->lpVtbl->GetTypeComp(This,ppTComp); } static FORCEINLINE HRESULT ITypeInfo2_GetFuncDesc(ITypeInfo2* This,UINT index,FUNCDESC **ppFuncDesc) { return This->lpVtbl->GetFuncDesc(This,index,ppFuncDesc); } static FORCEINLINE HRESULT ITypeInfo2_GetVarDesc(ITypeInfo2* This,UINT index,VARDESC **ppVarDesc) { return This->lpVtbl->GetVarDesc(This,index,ppVarDesc); } static FORCEINLINE HRESULT ITypeInfo2_GetNames(ITypeInfo2* This,MEMBERID memid,BSTR *rgBstrNames,UINT cMaxNames,UINT *pcNames) { return This->lpVtbl->GetNames(This,memid,rgBstrNames,cMaxNames,pcNames); } static FORCEINLINE HRESULT ITypeInfo2_GetRefTypeOfImplType(ITypeInfo2* This,UINT index,HREFTYPE *pRefType) { return This->lpVtbl->GetRefTypeOfImplType(This,index,pRefType); } static FORCEINLINE HRESULT ITypeInfo2_GetImplTypeFlags(ITypeInfo2* This,UINT index,INT *pImplTypeFlags) { return This->lpVtbl->GetImplTypeFlags(This,index,pImplTypeFlags); } static FORCEINLINE HRESULT ITypeInfo2_GetIDsOfNames(ITypeInfo2* This,LPOLESTR *rgszNames,UINT cNames,MEMBERID *pMemId) { return This->lpVtbl->GetIDsOfNames(This,rgszNames,cNames,pMemId); } static FORCEINLINE HRESULT ITypeInfo2_Invoke(ITypeInfo2* This,PVOID pvInstance,MEMBERID memid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) { return This->lpVtbl->Invoke(This,pvInstance,memid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr); } static FORCEINLINE HRESULT ITypeInfo2_GetDocumentation(ITypeInfo2* This,MEMBERID memid,BSTR *pBstrName,BSTR *pBstrDocString,DWORD *pdwHelpContext,BSTR *pBstrHelpFile) { return This->lpVtbl->GetDocumentation(This,memid,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile); } static FORCEINLINE HRESULT ITypeInfo2_GetDllEntry(ITypeInfo2* This,MEMBERID memid,INVOKEKIND invKind,BSTR *pBstrDllName,BSTR *pBstrName,WORD *pwOrdinal) { return This->lpVtbl->GetDllEntry(This,memid,invKind,pBstrDllName,pBstrName,pwOrdinal); } static FORCEINLINE HRESULT ITypeInfo2_GetRefTypeInfo(ITypeInfo2* This,HREFTYPE hRefType,ITypeInfo **ppTInfo) { return This->lpVtbl->GetRefTypeInfo(This,hRefType,ppTInfo); } static FORCEINLINE HRESULT ITypeInfo2_AddressOfMember(ITypeInfo2* This,MEMBERID memid,INVOKEKIND invKind,PVOID *ppv) { return This->lpVtbl->AddressOfMember(This,memid,invKind,ppv); } static FORCEINLINE HRESULT ITypeInfo2_CreateInstance(ITypeInfo2* This,IUnknown *pUnkOuter,REFIID riid,PVOID *ppvObj) { return This->lpVtbl->CreateInstance(This,pUnkOuter,riid,ppvObj); } static FORCEINLINE HRESULT ITypeInfo2_GetMops(ITypeInfo2* This,MEMBERID memid,BSTR *pBstrMops) { return This->lpVtbl->GetMops(This,memid,pBstrMops); } static FORCEINLINE HRESULT ITypeInfo2_GetContainingTypeLib(ITypeInfo2* This,ITypeLib **ppTLib,UINT *pIndex) { return This->lpVtbl->GetContainingTypeLib(This,ppTLib,pIndex); } static FORCEINLINE void ITypeInfo2_ReleaseTypeAttr(ITypeInfo2* This,TYPEATTR *pTypeAttr) { This->lpVtbl->ReleaseTypeAttr(This,pTypeAttr); } static FORCEINLINE void ITypeInfo2_ReleaseFuncDesc(ITypeInfo2* This,FUNCDESC *pFuncDesc) { This->lpVtbl->ReleaseFuncDesc(This,pFuncDesc); } static FORCEINLINE void ITypeInfo2_ReleaseVarDesc(ITypeInfo2* This,VARDESC *pVarDesc) { This->lpVtbl->ReleaseVarDesc(This,pVarDesc); } /*** ITypeInfo2 methods ***/ static FORCEINLINE HRESULT ITypeInfo2_GetTypeKind(ITypeInfo2* This,TYPEKIND *pTypeKind) { return This->lpVtbl->GetTypeKind(This,pTypeKind); } static FORCEINLINE HRESULT ITypeInfo2_GetTypeFlags(ITypeInfo2* This,ULONG *pTypeFlags) { return This->lpVtbl->GetTypeFlags(This,pTypeFlags); } static FORCEINLINE HRESULT ITypeInfo2_GetFuncIndexOfMemId(ITypeInfo2* This,MEMBERID memid,INVOKEKIND invKind,UINT *pFuncIndex) { return This->lpVtbl->GetFuncIndexOfMemId(This,memid,invKind,pFuncIndex); } static FORCEINLINE HRESULT ITypeInfo2_GetVarIndexOfMemId(ITypeInfo2* This,MEMBERID memid,UINT *pVarIndex) { return This->lpVtbl->GetVarIndexOfMemId(This,memid,pVarIndex); } static FORCEINLINE HRESULT ITypeInfo2_GetCustData(ITypeInfo2* This,REFGUID guid,VARIANT *pVarVal) { return This->lpVtbl->GetCustData(This,guid,pVarVal); } static FORCEINLINE HRESULT ITypeInfo2_GetFuncCustData(ITypeInfo2* This,UINT index,REFGUID guid,VARIANT *pVarVal) { return This->lpVtbl->GetFuncCustData(This,index,guid,pVarVal); } static FORCEINLINE HRESULT ITypeInfo2_GetParamCustData(ITypeInfo2* This,UINT indexFunc,UINT indexParam,REFGUID guid,VARIANT *pVarVal) { return This->lpVtbl->GetParamCustData(This,indexFunc,indexParam,guid,pVarVal); } static FORCEINLINE HRESULT ITypeInfo2_GetVarCustData(ITypeInfo2* This,UINT index,REFGUID guid,VARIANT *pVarVal) { return This->lpVtbl->GetVarCustData(This,index,guid,pVarVal); } static FORCEINLINE HRESULT ITypeInfo2_GetImplTypeCustData(ITypeInfo2* This,UINT index,REFGUID guid,VARIANT *pVarVal) { return This->lpVtbl->GetImplTypeCustData(This,index,guid,pVarVal); } static FORCEINLINE HRESULT ITypeInfo2_GetDocumentation2(ITypeInfo2* This,MEMBERID memid,LCID lcid,BSTR *pbstrHelpString,DWORD *pdwHelpStringContext,BSTR *pbstrHelpStringDll) { return This->lpVtbl->GetDocumentation2(This,memid,lcid,pbstrHelpString,pdwHelpStringContext,pbstrHelpStringDll); } static FORCEINLINE HRESULT ITypeInfo2_GetAllCustData(ITypeInfo2* This,CUSTDATA *pCustData) { return This->lpVtbl->GetAllCustData(This,pCustData); } static FORCEINLINE HRESULT ITypeInfo2_GetAllFuncCustData(ITypeInfo2* This,UINT index,CUSTDATA *pCustData) { return This->lpVtbl->GetAllFuncCustData(This,index,pCustData); } static FORCEINLINE HRESULT ITypeInfo2_GetAllParamCustData(ITypeInfo2* This,UINT indexFunc,UINT indexParam,CUSTDATA *pCustData) { return This->lpVtbl->GetAllParamCustData(This,indexFunc,indexParam,pCustData); } static FORCEINLINE HRESULT ITypeInfo2_GetAllVarCustData(ITypeInfo2* This,UINT index,CUSTDATA *pCustData) { return This->lpVtbl->GetAllVarCustData(This,index,pCustData); } static FORCEINLINE HRESULT ITypeInfo2_GetAllImplTypeCustData(ITypeInfo2* This,UINT index,CUSTDATA *pCustData) { return This->lpVtbl->GetAllImplTypeCustData(This,index,pCustData); } #endif #endif #endif HRESULT STDMETHODCALLTYPE ITypeInfo2_RemoteGetDocumentation2_Proxy( ITypeInfo2* This, MEMBERID memid, LCID lcid, DWORD refPtrFlags, BSTR *pbstrHelpString, DWORD *pdwHelpStringContext, BSTR *pbstrHelpStringDll); void __RPC_STUB ITypeInfo2_RemoteGetDocumentation2_Stub( IRpcStubBuffer* This, 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); #endif /* __ITypeInfo2_INTERFACE_DEFINED__ */ #endif #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) /***************************************************************************** * ITypeLib interface */ #ifndef __ITypeLib_INTERFACE_DEFINED__ #define __ITypeLib_INTERFACE_DEFINED__ typedef enum tagSYSKIND { SYS_WIN16 = 0, SYS_WIN32 = 1, SYS_MAC = 2, SYS_WIN64 = 3 } SYSKIND; typedef enum tagLIBFLAGS { LIBFLAG_FRESTRICTED = 0x1, LIBFLAG_FCONTROL = 0x2, LIBFLAG_FHIDDEN = 0x4, LIBFLAG_FHASDISKIMAGE = 0x8 } LIBFLAGS; typedef ITypeLib *LPTYPELIB; typedef struct tagTLIBATTR { GUID guid; LCID lcid; SYSKIND syskind; WORD wMajorVerNum; WORD wMinorVerNum; WORD wLibFlags; } TLIBATTR; typedef struct tagTLIBATTR *LPTLIBATTR; DEFINE_GUID(IID_ITypeLib, 0x00020402, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("00020402-0000-0000-c000-000000000046") ITypeLib : public IUnknown { virtual UINT STDMETHODCALLTYPE GetTypeInfoCount( ) = 0; virtual HRESULT STDMETHODCALLTYPE GetTypeInfo( UINT index, ITypeInfo **ppTInfo) = 0; virtual HRESULT STDMETHODCALLTYPE GetTypeInfoType( UINT index, TYPEKIND *pTKind) = 0; virtual HRESULT STDMETHODCALLTYPE GetTypeInfoOfGuid( REFGUID guid, ITypeInfo **ppTinfo) = 0; virtual HRESULT STDMETHODCALLTYPE GetLibAttr( TLIBATTR **ppTLibAttr) = 0; virtual HRESULT STDMETHODCALLTYPE GetTypeComp( ITypeComp **ppTComp) = 0; virtual HRESULT STDMETHODCALLTYPE GetDocumentation( INT index, BSTR *pBstrName, BSTR *pBstrDocString, DWORD *pdwHelpContext, BSTR *pBstrHelpFile) = 0; virtual HRESULT STDMETHODCALLTYPE IsName( LPOLESTR szNameBuf, ULONG lHashVal, WINBOOL *pfName) = 0; virtual HRESULT STDMETHODCALLTYPE FindName( LPOLESTR szNameBuf, ULONG lHashVal, ITypeInfo **ppTInfo, MEMBERID *rgMemId, USHORT *pcFound) = 0; virtual void STDMETHODCALLTYPE ReleaseTLibAttr( TLIBATTR *pTLibAttr) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITypeLib, 0x00020402, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct ITypeLibVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITypeLib *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITypeLib *This); ULONG (STDMETHODCALLTYPE *Release)( ITypeLib *This); /*** ITypeLib methods ***/ UINT (STDMETHODCALLTYPE *GetTypeInfoCount)( ITypeLib *This); HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( ITypeLib *This, UINT index, ITypeInfo **ppTInfo); HRESULT (STDMETHODCALLTYPE *GetTypeInfoType)( ITypeLib *This, UINT index, TYPEKIND *pTKind); HRESULT (STDMETHODCALLTYPE *GetTypeInfoOfGuid)( ITypeLib *This, REFGUID guid, ITypeInfo **ppTinfo); HRESULT (STDMETHODCALLTYPE *GetLibAttr)( ITypeLib *This, TLIBATTR **ppTLibAttr); HRESULT (STDMETHODCALLTYPE *GetTypeComp)( ITypeLib *This, ITypeComp **ppTComp); HRESULT (STDMETHODCALLTYPE *GetDocumentation)( ITypeLib *This, INT index, BSTR *pBstrName, BSTR *pBstrDocString, DWORD *pdwHelpContext, BSTR *pBstrHelpFile); HRESULT (STDMETHODCALLTYPE *IsName)( ITypeLib *This, LPOLESTR szNameBuf, ULONG lHashVal, WINBOOL *pfName); HRESULT (STDMETHODCALLTYPE *FindName)( ITypeLib *This, LPOLESTR szNameBuf, ULONG lHashVal, ITypeInfo **ppTInfo, MEMBERID *rgMemId, USHORT *pcFound); void (STDMETHODCALLTYPE *ReleaseTLibAttr)( ITypeLib *This, TLIBATTR *pTLibAttr); END_INTERFACE } ITypeLibVtbl; interface ITypeLib { CONST_VTBL ITypeLibVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITypeLib_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITypeLib_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITypeLib_Release(This) (This)->lpVtbl->Release(This) /*** ITypeLib methods ***/ #define ITypeLib_GetTypeInfoCount(This) (This)->lpVtbl->GetTypeInfoCount(This) #define ITypeLib_GetTypeInfo(This,index,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,index,ppTInfo) #define ITypeLib_GetTypeInfoType(This,index,pTKind) (This)->lpVtbl->GetTypeInfoType(This,index,pTKind) #define ITypeLib_GetTypeInfoOfGuid(This,guid,ppTinfo) (This)->lpVtbl->GetTypeInfoOfGuid(This,guid,ppTinfo) #define ITypeLib_GetLibAttr(This,ppTLibAttr) (This)->lpVtbl->GetLibAttr(This,ppTLibAttr) #define ITypeLib_GetTypeComp(This,ppTComp) (This)->lpVtbl->GetTypeComp(This,ppTComp) #define ITypeLib_GetDocumentation(This,index,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile) (This)->lpVtbl->GetDocumentation(This,index,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile) #define ITypeLib_IsName(This,szNameBuf,lHashVal,pfName) (This)->lpVtbl->IsName(This,szNameBuf,lHashVal,pfName) #define ITypeLib_FindName(This,szNameBuf,lHashVal,ppTInfo,rgMemId,pcFound) (This)->lpVtbl->FindName(This,szNameBuf,lHashVal,ppTInfo,rgMemId,pcFound) #define ITypeLib_ReleaseTLibAttr(This,pTLibAttr) (This)->lpVtbl->ReleaseTLibAttr(This,pTLibAttr) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ITypeLib_QueryInterface(ITypeLib* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ITypeLib_AddRef(ITypeLib* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ITypeLib_Release(ITypeLib* This) { return This->lpVtbl->Release(This); } /*** ITypeLib methods ***/ static FORCEINLINE UINT ITypeLib_GetTypeInfoCount(ITypeLib* This) { return This->lpVtbl->GetTypeInfoCount(This); } static FORCEINLINE HRESULT ITypeLib_GetTypeInfo(ITypeLib* This,UINT index,ITypeInfo **ppTInfo) { return This->lpVtbl->GetTypeInfo(This,index,ppTInfo); } static FORCEINLINE HRESULT ITypeLib_GetTypeInfoType(ITypeLib* This,UINT index,TYPEKIND *pTKind) { return This->lpVtbl->GetTypeInfoType(This,index,pTKind); } static FORCEINLINE HRESULT ITypeLib_GetTypeInfoOfGuid(ITypeLib* This,REFGUID guid,ITypeInfo **ppTinfo) { return This->lpVtbl->GetTypeInfoOfGuid(This,guid,ppTinfo); } static FORCEINLINE HRESULT ITypeLib_GetLibAttr(ITypeLib* This,TLIBATTR **ppTLibAttr) { return This->lpVtbl->GetLibAttr(This,ppTLibAttr); } static FORCEINLINE HRESULT ITypeLib_GetTypeComp(ITypeLib* This,ITypeComp **ppTComp) { return This->lpVtbl->GetTypeComp(This,ppTComp); } static FORCEINLINE HRESULT ITypeLib_GetDocumentation(ITypeLib* This,INT index,BSTR *pBstrName,BSTR *pBstrDocString,DWORD *pdwHelpContext,BSTR *pBstrHelpFile) { return This->lpVtbl->GetDocumentation(This,index,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile); } static FORCEINLINE HRESULT ITypeLib_IsName(ITypeLib* This,LPOLESTR szNameBuf,ULONG lHashVal,WINBOOL *pfName) { return This->lpVtbl->IsName(This,szNameBuf,lHashVal,pfName); } static FORCEINLINE HRESULT ITypeLib_FindName(ITypeLib* This,LPOLESTR szNameBuf,ULONG lHashVal,ITypeInfo **ppTInfo,MEMBERID *rgMemId,USHORT *pcFound) { return This->lpVtbl->FindName(This,szNameBuf,lHashVal,ppTInfo,rgMemId,pcFound); } static FORCEINLINE void ITypeLib_ReleaseTLibAttr(ITypeLib* This,TLIBATTR *pTLibAttr) { This->lpVtbl->ReleaseTLibAttr(This,pTLibAttr); } #endif #endif #endif HRESULT STDMETHODCALLTYPE ITypeLib_RemoteGetTypeInfoCount_Proxy( ITypeLib* This, UINT *pcTInfo); void __RPC_STUB ITypeLib_RemoteGetTypeInfoCount_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeLib_RemoteGetLibAttr_Proxy( ITypeLib* This, LPTLIBATTR *ppTLibAttr, CLEANLOCALSTORAGE *pDummy); void __RPC_STUB ITypeLib_RemoteGetLibAttr_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeLib_RemoteGetDocumentation_Proxy( ITypeLib* This, INT index, DWORD refPtrFlags, BSTR *pBstrName, BSTR *pBstrDocString, DWORD *pdwHelpContext, BSTR *pBstrHelpFile); void __RPC_STUB ITypeLib_RemoteGetDocumentation_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeLib_RemoteIsName_Proxy( ITypeLib* This, LPOLESTR szNameBuf, ULONG lHashVal, WINBOOL *pfName, BSTR *pBstrLibName); void __RPC_STUB ITypeLib_RemoteIsName_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeLib_RemoteFindName_Proxy( ITypeLib* This, LPOLESTR szNameBuf, ULONG lHashVal, ITypeInfo **ppTInfo, MEMBERID *rgMemId, USHORT *pcFound, BSTR *pBstrLibName); void __RPC_STUB ITypeLib_RemoteFindName_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeLib_LocalReleaseTLibAttr_Proxy( ITypeLib* This); void __RPC_STUB ITypeLib_LocalReleaseTLibAttr_Stub( IRpcStubBuffer* This, 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_GetLibAttr_Proxy( ITypeLib* This, TLIBATTR **ppTLibAttr); HRESULT __RPC_STUB ITypeLib_GetLibAttr_Stub( ITypeLib* This, LPTLIBATTR *ppTLibAttr, CLEANLOCALSTORAGE *pDummy); 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_IsName_Proxy( ITypeLib* This, LPOLESTR szNameBuf, ULONG lHashVal, WINBOOL *pfName); HRESULT __RPC_STUB ITypeLib_IsName_Stub( ITypeLib* This, LPOLESTR szNameBuf, ULONG lHashVal, WINBOOL *pfName, BSTR *pBstrLibName); 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); void CALLBACK ITypeLib_ReleaseTLibAttr_Proxy( ITypeLib* This, TLIBATTR *pTLibAttr); HRESULT __RPC_STUB ITypeLib_ReleaseTLibAttr_Stub( ITypeLib* This); #endif /* __ITypeLib_INTERFACE_DEFINED__ */ #endif #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) /***************************************************************************** * ITypeLib2 interface */ #ifndef __ITypeLib2_INTERFACE_DEFINED__ #define __ITypeLib2_INTERFACE_DEFINED__ typedef ITypeLib2 *LPTYPELIB2; DEFINE_GUID(IID_ITypeLib2, 0x00020411, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("00020411-0000-0000-c000-000000000046") ITypeLib2 : public ITypeLib { virtual HRESULT STDMETHODCALLTYPE GetCustData( REFGUID guid, VARIANT *pVarVal) = 0; virtual HRESULT STDMETHODCALLTYPE GetLibStatistics( ULONG *pcUniqueNames, ULONG *pcchUniqueNames) = 0; virtual HRESULT STDMETHODCALLTYPE GetDocumentation2( INT index, LCID lcid, BSTR *pbstrHelpString, DWORD *pdwHelpStringContext, BSTR *pbstrHelpStringDll) = 0; virtual HRESULT STDMETHODCALLTYPE GetAllCustData( CUSTDATA *pCustData) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITypeLib2, 0x00020411, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct ITypeLib2Vtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITypeLib2 *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITypeLib2 *This); ULONG (STDMETHODCALLTYPE *Release)( ITypeLib2 *This); /*** ITypeLib methods ***/ UINT (STDMETHODCALLTYPE *GetTypeInfoCount)( ITypeLib2 *This); HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( ITypeLib2 *This, UINT index, ITypeInfo **ppTInfo); HRESULT (STDMETHODCALLTYPE *GetTypeInfoType)( ITypeLib2 *This, UINT index, TYPEKIND *pTKind); HRESULT (STDMETHODCALLTYPE *GetTypeInfoOfGuid)( ITypeLib2 *This, REFGUID guid, ITypeInfo **ppTinfo); HRESULT (STDMETHODCALLTYPE *GetLibAttr)( ITypeLib2 *This, TLIBATTR **ppTLibAttr); HRESULT (STDMETHODCALLTYPE *GetTypeComp)( ITypeLib2 *This, ITypeComp **ppTComp); HRESULT (STDMETHODCALLTYPE *GetDocumentation)( ITypeLib2 *This, INT index, BSTR *pBstrName, BSTR *pBstrDocString, DWORD *pdwHelpContext, BSTR *pBstrHelpFile); HRESULT (STDMETHODCALLTYPE *IsName)( ITypeLib2 *This, LPOLESTR szNameBuf, ULONG lHashVal, WINBOOL *pfName); HRESULT (STDMETHODCALLTYPE *FindName)( ITypeLib2 *This, LPOLESTR szNameBuf, ULONG lHashVal, ITypeInfo **ppTInfo, MEMBERID *rgMemId, USHORT *pcFound); void (STDMETHODCALLTYPE *ReleaseTLibAttr)( ITypeLib2 *This, TLIBATTR *pTLibAttr); /*** ITypeLib2 methods ***/ HRESULT (STDMETHODCALLTYPE *GetCustData)( ITypeLib2 *This, REFGUID guid, VARIANT *pVarVal); HRESULT (STDMETHODCALLTYPE *GetLibStatistics)( ITypeLib2 *This, ULONG *pcUniqueNames, ULONG *pcchUniqueNames); HRESULT (STDMETHODCALLTYPE *GetDocumentation2)( ITypeLib2 *This, INT index, LCID lcid, BSTR *pbstrHelpString, DWORD *pdwHelpStringContext, BSTR *pbstrHelpStringDll); HRESULT (STDMETHODCALLTYPE *GetAllCustData)( ITypeLib2 *This, CUSTDATA *pCustData); END_INTERFACE } ITypeLib2Vtbl; interface ITypeLib2 { CONST_VTBL ITypeLib2Vtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITypeLib2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITypeLib2_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITypeLib2_Release(This) (This)->lpVtbl->Release(This) /*** ITypeLib methods ***/ #define ITypeLib2_GetTypeInfoCount(This) (This)->lpVtbl->GetTypeInfoCount(This) #define ITypeLib2_GetTypeInfo(This,index,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,index,ppTInfo) #define ITypeLib2_GetTypeInfoType(This,index,pTKind) (This)->lpVtbl->GetTypeInfoType(This,index,pTKind) #define ITypeLib2_GetTypeInfoOfGuid(This,guid,ppTinfo) (This)->lpVtbl->GetTypeInfoOfGuid(This,guid,ppTinfo) #define ITypeLib2_GetLibAttr(This,ppTLibAttr) (This)->lpVtbl->GetLibAttr(This,ppTLibAttr) #define ITypeLib2_GetTypeComp(This,ppTComp) (This)->lpVtbl->GetTypeComp(This,ppTComp) #define ITypeLib2_GetDocumentation(This,index,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile) (This)->lpVtbl->GetDocumentation(This,index,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile) #define ITypeLib2_IsName(This,szNameBuf,lHashVal,pfName) (This)->lpVtbl->IsName(This,szNameBuf,lHashVal,pfName) #define ITypeLib2_FindName(This,szNameBuf,lHashVal,ppTInfo,rgMemId,pcFound) (This)->lpVtbl->FindName(This,szNameBuf,lHashVal,ppTInfo,rgMemId,pcFound) #define ITypeLib2_ReleaseTLibAttr(This,pTLibAttr) (This)->lpVtbl->ReleaseTLibAttr(This,pTLibAttr) /*** ITypeLib2 methods ***/ #define ITypeLib2_GetCustData(This,guid,pVarVal) (This)->lpVtbl->GetCustData(This,guid,pVarVal) #define ITypeLib2_GetLibStatistics(This,pcUniqueNames,pcchUniqueNames) (This)->lpVtbl->GetLibStatistics(This,pcUniqueNames,pcchUniqueNames) #define ITypeLib2_GetDocumentation2(This,index,lcid,pbstrHelpString,pdwHelpStringContext,pbstrHelpStringDll) (This)->lpVtbl->GetDocumentation2(This,index,lcid,pbstrHelpString,pdwHelpStringContext,pbstrHelpStringDll) #define ITypeLib2_GetAllCustData(This,pCustData) (This)->lpVtbl->GetAllCustData(This,pCustData) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ITypeLib2_QueryInterface(ITypeLib2* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ITypeLib2_AddRef(ITypeLib2* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ITypeLib2_Release(ITypeLib2* This) { return This->lpVtbl->Release(This); } /*** ITypeLib methods ***/ static FORCEINLINE UINT ITypeLib2_GetTypeInfoCount(ITypeLib2* This) { return This->lpVtbl->GetTypeInfoCount(This); } static FORCEINLINE HRESULT ITypeLib2_GetTypeInfo(ITypeLib2* This,UINT index,ITypeInfo **ppTInfo) { return This->lpVtbl->GetTypeInfo(This,index,ppTInfo); } static FORCEINLINE HRESULT ITypeLib2_GetTypeInfoType(ITypeLib2* This,UINT index,TYPEKIND *pTKind) { return This->lpVtbl->GetTypeInfoType(This,index,pTKind); } static FORCEINLINE HRESULT ITypeLib2_GetTypeInfoOfGuid(ITypeLib2* This,REFGUID guid,ITypeInfo **ppTinfo) { return This->lpVtbl->GetTypeInfoOfGuid(This,guid,ppTinfo); } static FORCEINLINE HRESULT ITypeLib2_GetLibAttr(ITypeLib2* This,TLIBATTR **ppTLibAttr) { return This->lpVtbl->GetLibAttr(This,ppTLibAttr); } static FORCEINLINE HRESULT ITypeLib2_GetTypeComp(ITypeLib2* This,ITypeComp **ppTComp) { return This->lpVtbl->GetTypeComp(This,ppTComp); } static FORCEINLINE HRESULT ITypeLib2_GetDocumentation(ITypeLib2* This,INT index,BSTR *pBstrName,BSTR *pBstrDocString,DWORD *pdwHelpContext,BSTR *pBstrHelpFile) { return This->lpVtbl->GetDocumentation(This,index,pBstrName,pBstrDocString,pdwHelpContext,pBstrHelpFile); } static FORCEINLINE HRESULT ITypeLib2_IsName(ITypeLib2* This,LPOLESTR szNameBuf,ULONG lHashVal,WINBOOL *pfName) { return This->lpVtbl->IsName(This,szNameBuf,lHashVal,pfName); } static FORCEINLINE HRESULT ITypeLib2_FindName(ITypeLib2* This,LPOLESTR szNameBuf,ULONG lHashVal,ITypeInfo **ppTInfo,MEMBERID *rgMemId,USHORT *pcFound) { return This->lpVtbl->FindName(This,szNameBuf,lHashVal,ppTInfo,rgMemId,pcFound); } static FORCEINLINE void ITypeLib2_ReleaseTLibAttr(ITypeLib2* This,TLIBATTR *pTLibAttr) { This->lpVtbl->ReleaseTLibAttr(This,pTLibAttr); } /*** ITypeLib2 methods ***/ static FORCEINLINE HRESULT ITypeLib2_GetCustData(ITypeLib2* This,REFGUID guid,VARIANT *pVarVal) { return This->lpVtbl->GetCustData(This,guid,pVarVal); } static FORCEINLINE HRESULT ITypeLib2_GetLibStatistics(ITypeLib2* This,ULONG *pcUniqueNames,ULONG *pcchUniqueNames) { return This->lpVtbl->GetLibStatistics(This,pcUniqueNames,pcchUniqueNames); } static FORCEINLINE HRESULT ITypeLib2_GetDocumentation2(ITypeLib2* This,INT index,LCID lcid,BSTR *pbstrHelpString,DWORD *pdwHelpStringContext,BSTR *pbstrHelpStringDll) { return This->lpVtbl->GetDocumentation2(This,index,lcid,pbstrHelpString,pdwHelpStringContext,pbstrHelpStringDll); } static FORCEINLINE HRESULT ITypeLib2_GetAllCustData(ITypeLib2* This,CUSTDATA *pCustData) { return This->lpVtbl->GetAllCustData(This,pCustData); } #endif #endif #endif HRESULT STDMETHODCALLTYPE ITypeLib2_RemoteGetLibStatistics_Proxy( ITypeLib2* This, ULONG *pcUniqueNames, ULONG *pcchUniqueNames); void __RPC_STUB ITypeLib2_RemoteGetLibStatistics_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT STDMETHODCALLTYPE ITypeLib2_RemoteGetDocumentation2_Proxy( ITypeLib2* This, INT index, LCID lcid, DWORD refPtrFlags, BSTR *pbstrHelpString, DWORD *pdwHelpStringContext, BSTR *pbstrHelpStringDll); void __RPC_STUB ITypeLib2_RemoteGetDocumentation2_Stub( IRpcStubBuffer* This, 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_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); #endif /* __ITypeLib2_INTERFACE_DEFINED__ */ /***************************************************************************** * ITypeChangeEvents interface */ #ifndef __ITypeChangeEvents_INTERFACE_DEFINED__ #define __ITypeChangeEvents_INTERFACE_DEFINED__ typedef ITypeChangeEvents *LPTYPECHANGEEVENTS; typedef enum tagCHANGEKIND { CHANGEKIND_ADDMEMBER = 0, CHANGEKIND_DELETEMEMBER = 1, CHANGEKIND_SETNAMES = 2, CHANGEKIND_SETDOCUMENTATION = 3, CHANGEKIND_GENERAL = 4, CHANGEKIND_INVALIDATE = 5, CHANGEKIND_CHANGEFAILED = 6, CHANGEKIND_MAX = 7 } CHANGEKIND; DEFINE_GUID(IID_ITypeChangeEvents, 0x00020410, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("00020410-0000-0000-c000-000000000046") ITypeChangeEvents : public IUnknown { virtual HRESULT STDMETHODCALLTYPE RequestTypeChange( CHANGEKIND changeKind, ITypeInfo *pTInfoBefore, LPOLESTR pStrName, INT *pfCancel) = 0; virtual HRESULT STDMETHODCALLTYPE AfterTypeChange( CHANGEKIND changeKind, ITypeInfo *pTInfoAfter, LPOLESTR pStrName) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITypeChangeEvents, 0x00020410, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct ITypeChangeEventsVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITypeChangeEvents *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITypeChangeEvents *This); ULONG (STDMETHODCALLTYPE *Release)( ITypeChangeEvents *This); /*** ITypeChangeEvents methods ***/ HRESULT (STDMETHODCALLTYPE *RequestTypeChange)( ITypeChangeEvents *This, CHANGEKIND changeKind, ITypeInfo *pTInfoBefore, LPOLESTR pStrName, INT *pfCancel); HRESULT (STDMETHODCALLTYPE *AfterTypeChange)( ITypeChangeEvents *This, CHANGEKIND changeKind, ITypeInfo *pTInfoAfter, LPOLESTR pStrName); END_INTERFACE } ITypeChangeEventsVtbl; interface ITypeChangeEvents { CONST_VTBL ITypeChangeEventsVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITypeChangeEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITypeChangeEvents_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITypeChangeEvents_Release(This) (This)->lpVtbl->Release(This) /*** ITypeChangeEvents methods ***/ #define ITypeChangeEvents_RequestTypeChange(This,changeKind,pTInfoBefore,pStrName,pfCancel) (This)->lpVtbl->RequestTypeChange(This,changeKind,pTInfoBefore,pStrName,pfCancel) #define ITypeChangeEvents_AfterTypeChange(This,changeKind,pTInfoAfter,pStrName) (This)->lpVtbl->AfterTypeChange(This,changeKind,pTInfoAfter,pStrName) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ITypeChangeEvents_QueryInterface(ITypeChangeEvents* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ITypeChangeEvents_AddRef(ITypeChangeEvents* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ITypeChangeEvents_Release(ITypeChangeEvents* This) { return This->lpVtbl->Release(This); } /*** ITypeChangeEvents methods ***/ static FORCEINLINE HRESULT ITypeChangeEvents_RequestTypeChange(ITypeChangeEvents* This,CHANGEKIND changeKind,ITypeInfo *pTInfoBefore,LPOLESTR pStrName,INT *pfCancel) { return This->lpVtbl->RequestTypeChange(This,changeKind,pTInfoBefore,pStrName,pfCancel); } static FORCEINLINE HRESULT ITypeChangeEvents_AfterTypeChange(ITypeChangeEvents* This,CHANGEKIND changeKind,ITypeInfo *pTInfoAfter,LPOLESTR pStrName) { return This->lpVtbl->AfterTypeChange(This,changeKind,pTInfoAfter,pStrName); } #endif #endif #endif #endif /* __ITypeChangeEvents_INTERFACE_DEFINED__ */ /***************************************************************************** * IErrorInfo interface */ #ifndef __IErrorInfo_INTERFACE_DEFINED__ #define __IErrorInfo_INTERFACE_DEFINED__ typedef IErrorInfo *LPERRORINFO; DEFINE_GUID(IID_IErrorInfo, 0x1cf2b120, 0x547d, 0x101b, 0x8e,0x65, 0x08,0x00,0x2b,0x2b,0xd1,0x19); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("1cf2b120-547d-101b-8e65-08002b2bd119") IErrorInfo : public IUnknown { virtual HRESULT STDMETHODCALLTYPE GetGUID( GUID *pGUID) = 0; virtual HRESULT STDMETHODCALLTYPE GetSource( BSTR *pBstrSource) = 0; virtual HRESULT STDMETHODCALLTYPE GetDescription( BSTR *pBstrDescription) = 0; virtual HRESULT STDMETHODCALLTYPE GetHelpFile( BSTR *pBstrHelpFile) = 0; virtual HRESULT STDMETHODCALLTYPE GetHelpContext( DWORD *pdwHelpContext) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IErrorInfo, 0x1cf2b120, 0x547d, 0x101b, 0x8e,0x65, 0x08,0x00,0x2b,0x2b,0xd1,0x19) #endif #else typedef struct IErrorInfoVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IErrorInfo *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IErrorInfo *This); ULONG (STDMETHODCALLTYPE *Release)( IErrorInfo *This); /*** IErrorInfo methods ***/ HRESULT (STDMETHODCALLTYPE *GetGUID)( IErrorInfo *This, GUID *pGUID); HRESULT (STDMETHODCALLTYPE *GetSource)( IErrorInfo *This, BSTR *pBstrSource); HRESULT (STDMETHODCALLTYPE *GetDescription)( IErrorInfo *This, BSTR *pBstrDescription); HRESULT (STDMETHODCALLTYPE *GetHelpFile)( IErrorInfo *This, BSTR *pBstrHelpFile); HRESULT (STDMETHODCALLTYPE *GetHelpContext)( IErrorInfo *This, DWORD *pdwHelpContext); END_INTERFACE } IErrorInfoVtbl; interface IErrorInfo { CONST_VTBL IErrorInfoVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IErrorInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IErrorInfo_AddRef(This) (This)->lpVtbl->AddRef(This) #define IErrorInfo_Release(This) (This)->lpVtbl->Release(This) /*** IErrorInfo methods ***/ #define IErrorInfo_GetGUID(This,pGUID) (This)->lpVtbl->GetGUID(This,pGUID) #define IErrorInfo_GetSource(This,pBstrSource) (This)->lpVtbl->GetSource(This,pBstrSource) #define IErrorInfo_GetDescription(This,pBstrDescription) (This)->lpVtbl->GetDescription(This,pBstrDescription) #define IErrorInfo_GetHelpFile(This,pBstrHelpFile) (This)->lpVtbl->GetHelpFile(This,pBstrHelpFile) #define IErrorInfo_GetHelpContext(This,pdwHelpContext) (This)->lpVtbl->GetHelpContext(This,pdwHelpContext) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IErrorInfo_QueryInterface(IErrorInfo* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IErrorInfo_AddRef(IErrorInfo* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IErrorInfo_Release(IErrorInfo* This) { return This->lpVtbl->Release(This); } /*** IErrorInfo methods ***/ static FORCEINLINE HRESULT IErrorInfo_GetGUID(IErrorInfo* This,GUID *pGUID) { return This->lpVtbl->GetGUID(This,pGUID); } static FORCEINLINE HRESULT IErrorInfo_GetSource(IErrorInfo* This,BSTR *pBstrSource) { return This->lpVtbl->GetSource(This,pBstrSource); } static FORCEINLINE HRESULT IErrorInfo_GetDescription(IErrorInfo* This,BSTR *pBstrDescription) { return This->lpVtbl->GetDescription(This,pBstrDescription); } static FORCEINLINE HRESULT IErrorInfo_GetHelpFile(IErrorInfo* This,BSTR *pBstrHelpFile) { return This->lpVtbl->GetHelpFile(This,pBstrHelpFile); } static FORCEINLINE HRESULT IErrorInfo_GetHelpContext(IErrorInfo* This,DWORD *pdwHelpContext) { return This->lpVtbl->GetHelpContext(This,pdwHelpContext); } #endif #endif #endif #endif /* __IErrorInfo_INTERFACE_DEFINED__ */ /***************************************************************************** * ICreateErrorInfo interface */ #ifndef __ICreateErrorInfo_INTERFACE_DEFINED__ #define __ICreateErrorInfo_INTERFACE_DEFINED__ typedef ICreateErrorInfo *LPCREATEERRORINFO; DEFINE_GUID(IID_ICreateErrorInfo, 0x22f03340, 0x547d, 0x101b, 0x8e,0x65, 0x08,0x00,0x2b,0x2b,0xd1,0x19); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("22f03340-547d-101b-8e65-08002b2bd119") ICreateErrorInfo : public IUnknown { virtual HRESULT STDMETHODCALLTYPE SetGUID( REFGUID rguid) = 0; virtual HRESULT STDMETHODCALLTYPE SetSource( LPOLESTR szSource) = 0; virtual HRESULT STDMETHODCALLTYPE SetDescription( LPOLESTR szDescription) = 0; virtual HRESULT STDMETHODCALLTYPE SetHelpFile( LPOLESTR szHelpFile) = 0; virtual HRESULT STDMETHODCALLTYPE SetHelpContext( DWORD dwHelpContext) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ICreateErrorInfo, 0x22f03340, 0x547d, 0x101b, 0x8e,0x65, 0x08,0x00,0x2b,0x2b,0xd1,0x19) #endif #else typedef struct ICreateErrorInfoVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ICreateErrorInfo *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ICreateErrorInfo *This); ULONG (STDMETHODCALLTYPE *Release)( ICreateErrorInfo *This); /*** ICreateErrorInfo methods ***/ HRESULT (STDMETHODCALLTYPE *SetGUID)( ICreateErrorInfo *This, REFGUID rguid); HRESULT (STDMETHODCALLTYPE *SetSource)( ICreateErrorInfo *This, LPOLESTR szSource); HRESULT (STDMETHODCALLTYPE *SetDescription)( ICreateErrorInfo *This, LPOLESTR szDescription); HRESULT (STDMETHODCALLTYPE *SetHelpFile)( ICreateErrorInfo *This, LPOLESTR szHelpFile); HRESULT (STDMETHODCALLTYPE *SetHelpContext)( ICreateErrorInfo *This, DWORD dwHelpContext); END_INTERFACE } ICreateErrorInfoVtbl; interface ICreateErrorInfo { CONST_VTBL ICreateErrorInfoVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ICreateErrorInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ICreateErrorInfo_AddRef(This) (This)->lpVtbl->AddRef(This) #define ICreateErrorInfo_Release(This) (This)->lpVtbl->Release(This) /*** ICreateErrorInfo methods ***/ #define ICreateErrorInfo_SetGUID(This,rguid) (This)->lpVtbl->SetGUID(This,rguid) #define ICreateErrorInfo_SetSource(This,szSource) (This)->lpVtbl->SetSource(This,szSource) #define ICreateErrorInfo_SetDescription(This,szDescription) (This)->lpVtbl->SetDescription(This,szDescription) #define ICreateErrorInfo_SetHelpFile(This,szHelpFile) (This)->lpVtbl->SetHelpFile(This,szHelpFile) #define ICreateErrorInfo_SetHelpContext(This,dwHelpContext) (This)->lpVtbl->SetHelpContext(This,dwHelpContext) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ICreateErrorInfo_QueryInterface(ICreateErrorInfo* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ICreateErrorInfo_AddRef(ICreateErrorInfo* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ICreateErrorInfo_Release(ICreateErrorInfo* This) { return This->lpVtbl->Release(This); } /*** ICreateErrorInfo methods ***/ static FORCEINLINE HRESULT ICreateErrorInfo_SetGUID(ICreateErrorInfo* This,REFGUID rguid) { return This->lpVtbl->SetGUID(This,rguid); } static FORCEINLINE HRESULT ICreateErrorInfo_SetSource(ICreateErrorInfo* This,LPOLESTR szSource) { return This->lpVtbl->SetSource(This,szSource); } static FORCEINLINE HRESULT ICreateErrorInfo_SetDescription(ICreateErrorInfo* This,LPOLESTR szDescription) { return This->lpVtbl->SetDescription(This,szDescription); } static FORCEINLINE HRESULT ICreateErrorInfo_SetHelpFile(ICreateErrorInfo* This,LPOLESTR szHelpFile) { return This->lpVtbl->SetHelpFile(This,szHelpFile); } static FORCEINLINE HRESULT ICreateErrorInfo_SetHelpContext(ICreateErrorInfo* This,DWORD dwHelpContext) { return This->lpVtbl->SetHelpContext(This,dwHelpContext); } #endif #endif #endif #endif /* __ICreateErrorInfo_INTERFACE_DEFINED__ */ /***************************************************************************** * ISupportErrorInfo interface */ #ifndef __ISupportErrorInfo_INTERFACE_DEFINED__ #define __ISupportErrorInfo_INTERFACE_DEFINED__ typedef ISupportErrorInfo *LPSUPPORTERRORINFO; DEFINE_GUID(IID_ISupportErrorInfo, 0xdf0b3d60, 0x548f, 0x101b, 0x8e,0x65, 0x08,0x00,0x2b,0x2b,0xd1,0x19); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("df0b3d60-548f-101b-8e65-08002b2bd119") ISupportErrorInfo : public IUnknown { virtual HRESULT STDMETHODCALLTYPE InterfaceSupportsErrorInfo( REFIID riid) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ISupportErrorInfo, 0xdf0b3d60, 0x548f, 0x101b, 0x8e,0x65, 0x08,0x00,0x2b,0x2b,0xd1,0x19) #endif #else typedef struct ISupportErrorInfoVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ISupportErrorInfo *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ISupportErrorInfo *This); ULONG (STDMETHODCALLTYPE *Release)( ISupportErrorInfo *This); /*** ISupportErrorInfo methods ***/ HRESULT (STDMETHODCALLTYPE *InterfaceSupportsErrorInfo)( ISupportErrorInfo *This, REFIID riid); END_INTERFACE } ISupportErrorInfoVtbl; interface ISupportErrorInfo { CONST_VTBL ISupportErrorInfoVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ISupportErrorInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ISupportErrorInfo_AddRef(This) (This)->lpVtbl->AddRef(This) #define ISupportErrorInfo_Release(This) (This)->lpVtbl->Release(This) /*** ISupportErrorInfo methods ***/ #define ISupportErrorInfo_InterfaceSupportsErrorInfo(This,riid) (This)->lpVtbl->InterfaceSupportsErrorInfo(This,riid) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ISupportErrorInfo_QueryInterface(ISupportErrorInfo* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ISupportErrorInfo_AddRef(ISupportErrorInfo* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ISupportErrorInfo_Release(ISupportErrorInfo* This) { return This->lpVtbl->Release(This); } /*** ISupportErrorInfo methods ***/ static FORCEINLINE HRESULT ISupportErrorInfo_InterfaceSupportsErrorInfo(ISupportErrorInfo* This,REFIID riid) { return This->lpVtbl->InterfaceSupportsErrorInfo(This,riid); } #endif #endif #endif #endif /* __ISupportErrorInfo_INTERFACE_DEFINED__ */ /***************************************************************************** * ITypeFactory interface */ #ifndef __ITypeFactory_INTERFACE_DEFINED__ #define __ITypeFactory_INTERFACE_DEFINED__ DEFINE_GUID(IID_ITypeFactory, 0x0000002e, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0000002e-0000-0000-c000-000000000046") ITypeFactory : public IUnknown { virtual HRESULT STDMETHODCALLTYPE CreateFromTypeInfo( ITypeInfo *pTypeInfo, REFIID riid, IUnknown **ppv) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITypeFactory, 0x0000002e, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct ITypeFactoryVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITypeFactory *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITypeFactory *This); ULONG (STDMETHODCALLTYPE *Release)( ITypeFactory *This); /*** ITypeFactory methods ***/ HRESULT (STDMETHODCALLTYPE *CreateFromTypeInfo)( ITypeFactory *This, ITypeInfo *pTypeInfo, REFIID riid, IUnknown **ppv); END_INTERFACE } ITypeFactoryVtbl; interface ITypeFactory { CONST_VTBL ITypeFactoryVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITypeFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITypeFactory_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITypeFactory_Release(This) (This)->lpVtbl->Release(This) /*** ITypeFactory methods ***/ #define ITypeFactory_CreateFromTypeInfo(This,pTypeInfo,riid,ppv) (This)->lpVtbl->CreateFromTypeInfo(This,pTypeInfo,riid,ppv) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ITypeFactory_QueryInterface(ITypeFactory* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ITypeFactory_AddRef(ITypeFactory* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ITypeFactory_Release(ITypeFactory* This) { return This->lpVtbl->Release(This); } /*** ITypeFactory methods ***/ static FORCEINLINE HRESULT ITypeFactory_CreateFromTypeInfo(ITypeFactory* This,ITypeInfo *pTypeInfo,REFIID riid,IUnknown **ppv) { return This->lpVtbl->CreateFromTypeInfo(This,pTypeInfo,riid,ppv); } #endif #endif #endif #endif /* __ITypeFactory_INTERFACE_DEFINED__ */ /***************************************************************************** * ITypeMarshal interface */ #ifndef __ITypeMarshal_INTERFACE_DEFINED__ #define __ITypeMarshal_INTERFACE_DEFINED__ DEFINE_GUID(IID_ITypeMarshal, 0x0000002d, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0000002d-0000-0000-c000-000000000046") ITypeMarshal : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Size( PVOID pvType, DWORD dwDestContext, PVOID pvDestContext, ULONG *pSize) = 0; virtual HRESULT STDMETHODCALLTYPE Marshal( PVOID pvType, DWORD dwDestContext, PVOID pvDestContext, ULONG cbBufferLength, BYTE *pBuffer, ULONG *pcbWritten) = 0; virtual HRESULT STDMETHODCALLTYPE Unmarshal( PVOID pvType, DWORD dwFlags, ULONG cbBufferLength, BYTE *pBuffer, ULONG *pcbRead) = 0; virtual HRESULT STDMETHODCALLTYPE Free( PVOID pvType) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(ITypeMarshal, 0x0000002d, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct ITypeMarshalVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( ITypeMarshal *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( ITypeMarshal *This); ULONG (STDMETHODCALLTYPE *Release)( ITypeMarshal *This); /*** ITypeMarshal methods ***/ HRESULT (STDMETHODCALLTYPE *Size)( ITypeMarshal *This, PVOID pvType, DWORD dwDestContext, PVOID pvDestContext, ULONG *pSize); HRESULT (STDMETHODCALLTYPE *Marshal)( ITypeMarshal *This, PVOID pvType, DWORD dwDestContext, PVOID pvDestContext, ULONG cbBufferLength, BYTE *pBuffer, ULONG *pcbWritten); HRESULT (STDMETHODCALLTYPE *Unmarshal)( ITypeMarshal *This, PVOID pvType, DWORD dwFlags, ULONG cbBufferLength, BYTE *pBuffer, ULONG *pcbRead); HRESULT (STDMETHODCALLTYPE *Free)( ITypeMarshal *This, PVOID pvType); END_INTERFACE } ITypeMarshalVtbl; interface ITypeMarshal { CONST_VTBL ITypeMarshalVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ITypeMarshal_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ITypeMarshal_AddRef(This) (This)->lpVtbl->AddRef(This) #define ITypeMarshal_Release(This) (This)->lpVtbl->Release(This) /*** ITypeMarshal methods ***/ #define ITypeMarshal_Size(This,pvType,dwDestContext,pvDestContext,pSize) (This)->lpVtbl->Size(This,pvType,dwDestContext,pvDestContext,pSize) #define ITypeMarshal_Marshal(This,pvType,dwDestContext,pvDestContext,cbBufferLength,pBuffer,pcbWritten) (This)->lpVtbl->Marshal(This,pvType,dwDestContext,pvDestContext,cbBufferLength,pBuffer,pcbWritten) #define ITypeMarshal_Unmarshal(This,pvType,dwFlags,cbBufferLength,pBuffer,pcbRead) (This)->lpVtbl->Unmarshal(This,pvType,dwFlags,cbBufferLength,pBuffer,pcbRead) #define ITypeMarshal_Free(This,pvType) (This)->lpVtbl->Free(This,pvType) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT ITypeMarshal_QueryInterface(ITypeMarshal* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG ITypeMarshal_AddRef(ITypeMarshal* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG ITypeMarshal_Release(ITypeMarshal* This) { return This->lpVtbl->Release(This); } /*** ITypeMarshal methods ***/ static FORCEINLINE HRESULT ITypeMarshal_Size(ITypeMarshal* This,PVOID pvType,DWORD dwDestContext,PVOID pvDestContext,ULONG *pSize) { return This->lpVtbl->Size(This,pvType,dwDestContext,pvDestContext,pSize); } static FORCEINLINE HRESULT ITypeMarshal_Marshal(ITypeMarshal* This,PVOID pvType,DWORD dwDestContext,PVOID pvDestContext,ULONG cbBufferLength,BYTE *pBuffer,ULONG *pcbWritten) { return This->lpVtbl->Marshal(This,pvType,dwDestContext,pvDestContext,cbBufferLength,pBuffer,pcbWritten); } static FORCEINLINE HRESULT ITypeMarshal_Unmarshal(ITypeMarshal* This,PVOID pvType,DWORD dwFlags,ULONG cbBufferLength,BYTE *pBuffer,ULONG *pcbRead) { return This->lpVtbl->Unmarshal(This,pvType,dwFlags,cbBufferLength,pBuffer,pcbRead); } static FORCEINLINE HRESULT ITypeMarshal_Free(ITypeMarshal* This,PVOID pvType) { return This->lpVtbl->Free(This,pvType); } #endif #endif #endif #endif /* __ITypeMarshal_INTERFACE_DEFINED__ */ /***************************************************************************** * IRecordInfo interface */ #ifndef __IRecordInfo_INTERFACE_DEFINED__ #define __IRecordInfo_INTERFACE_DEFINED__ typedef IRecordInfo *LPRECORDINFO; DEFINE_GUID(IID_IRecordInfo, 0x0000002f, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0000002f-0000-0000-c000-000000000046") IRecordInfo : public IUnknown { virtual HRESULT STDMETHODCALLTYPE RecordInit( PVOID pvNew) = 0; virtual HRESULT STDMETHODCALLTYPE RecordClear( PVOID pvExisting) = 0; virtual HRESULT STDMETHODCALLTYPE RecordCopy( PVOID pvExisting, PVOID pvNew) = 0; virtual HRESULT STDMETHODCALLTYPE GetGuid( GUID *pguid) = 0; virtual HRESULT STDMETHODCALLTYPE GetName( BSTR *pbstrName) = 0; virtual HRESULT STDMETHODCALLTYPE GetSize( ULONG *pcbSize) = 0; virtual HRESULT STDMETHODCALLTYPE GetTypeInfo( ITypeInfo **ppTypeInfo) = 0; virtual HRESULT STDMETHODCALLTYPE GetField( PVOID pvData, LPCOLESTR szFieldName, VARIANT *pvarField) = 0; virtual HRESULT STDMETHODCALLTYPE GetFieldNoCopy( PVOID pvData, LPCOLESTR szFieldName, VARIANT *pvarField, PVOID *ppvDataCArray) = 0; virtual HRESULT STDMETHODCALLTYPE PutField( ULONG wFlags, PVOID pvData, LPCOLESTR szFieldName, VARIANT *pvarField) = 0; virtual HRESULT STDMETHODCALLTYPE PutFieldNoCopy( ULONG wFlags, PVOID pvData, LPCOLESTR szFieldName, VARIANT *pvarField) = 0; virtual HRESULT STDMETHODCALLTYPE GetFieldNames( ULONG *pcNames, BSTR *rgBstrNames) = 0; virtual WINBOOL STDMETHODCALLTYPE IsMatchingType( IRecordInfo *pRecordInfo) = 0; virtual PVOID STDMETHODCALLTYPE RecordCreate( ) = 0; virtual HRESULT STDMETHODCALLTYPE RecordCreateCopy( PVOID pvSource, PVOID *ppvDest) = 0; virtual HRESULT STDMETHODCALLTYPE RecordDestroy( PVOID pvRecord) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IRecordInfo, 0x0000002f, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IRecordInfoVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IRecordInfo *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IRecordInfo *This); ULONG (STDMETHODCALLTYPE *Release)( IRecordInfo *This); /*** IRecordInfo methods ***/ HRESULT (STDMETHODCALLTYPE *RecordInit)( IRecordInfo *This, PVOID pvNew); HRESULT (STDMETHODCALLTYPE *RecordClear)( IRecordInfo *This, PVOID pvExisting); HRESULT (STDMETHODCALLTYPE *RecordCopy)( IRecordInfo *This, PVOID pvExisting, PVOID pvNew); HRESULT (STDMETHODCALLTYPE *GetGuid)( IRecordInfo *This, GUID *pguid); HRESULT (STDMETHODCALLTYPE *GetName)( IRecordInfo *This, BSTR *pbstrName); HRESULT (STDMETHODCALLTYPE *GetSize)( IRecordInfo *This, ULONG *pcbSize); HRESULT (STDMETHODCALLTYPE *GetTypeInfo)( IRecordInfo *This, ITypeInfo **ppTypeInfo); HRESULT (STDMETHODCALLTYPE *GetField)( IRecordInfo *This, PVOID pvData, LPCOLESTR szFieldName, VARIANT *pvarField); HRESULT (STDMETHODCALLTYPE *GetFieldNoCopy)( IRecordInfo *This, PVOID pvData, LPCOLESTR szFieldName, VARIANT *pvarField, PVOID *ppvDataCArray); HRESULT (STDMETHODCALLTYPE *PutField)( IRecordInfo *This, ULONG wFlags, PVOID pvData, LPCOLESTR szFieldName, VARIANT *pvarField); HRESULT (STDMETHODCALLTYPE *PutFieldNoCopy)( IRecordInfo *This, ULONG wFlags, PVOID pvData, LPCOLESTR szFieldName, VARIANT *pvarField); HRESULT (STDMETHODCALLTYPE *GetFieldNames)( IRecordInfo *This, ULONG *pcNames, BSTR *rgBstrNames); WINBOOL (STDMETHODCALLTYPE *IsMatchingType)( IRecordInfo *This, IRecordInfo *pRecordInfo); PVOID (STDMETHODCALLTYPE *RecordCreate)( IRecordInfo *This); HRESULT (STDMETHODCALLTYPE *RecordCreateCopy)( IRecordInfo *This, PVOID pvSource, PVOID *ppvDest); HRESULT (STDMETHODCALLTYPE *RecordDestroy)( IRecordInfo *This, PVOID pvRecord); END_INTERFACE } IRecordInfoVtbl; interface IRecordInfo { CONST_VTBL IRecordInfoVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IRecordInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IRecordInfo_AddRef(This) (This)->lpVtbl->AddRef(This) #define IRecordInfo_Release(This) (This)->lpVtbl->Release(This) /*** IRecordInfo methods ***/ #define IRecordInfo_RecordInit(This,pvNew) (This)->lpVtbl->RecordInit(This,pvNew) #define IRecordInfo_RecordClear(This,pvExisting) (This)->lpVtbl->RecordClear(This,pvExisting) #define IRecordInfo_RecordCopy(This,pvExisting,pvNew) (This)->lpVtbl->RecordCopy(This,pvExisting,pvNew) #define IRecordInfo_GetGuid(This,pguid) (This)->lpVtbl->GetGuid(This,pguid) #define IRecordInfo_GetName(This,pbstrName) (This)->lpVtbl->GetName(This,pbstrName) #define IRecordInfo_GetSize(This,pcbSize) (This)->lpVtbl->GetSize(This,pcbSize) #define IRecordInfo_GetTypeInfo(This,ppTypeInfo) (This)->lpVtbl->GetTypeInfo(This,ppTypeInfo) #define IRecordInfo_GetField(This,pvData,szFieldName,pvarField) (This)->lpVtbl->GetField(This,pvData,szFieldName,pvarField) #define IRecordInfo_GetFieldNoCopy(This,pvData,szFieldName,pvarField,ppvDataCArray) (This)->lpVtbl->GetFieldNoCopy(This,pvData,szFieldName,pvarField,ppvDataCArray) #define IRecordInfo_PutField(This,wFlags,pvData,szFieldName,pvarField) (This)->lpVtbl->PutField(This,wFlags,pvData,szFieldName,pvarField) #define IRecordInfo_PutFieldNoCopy(This,wFlags,pvData,szFieldName,pvarField) (This)->lpVtbl->PutFieldNoCopy(This,wFlags,pvData,szFieldName,pvarField) #define IRecordInfo_GetFieldNames(This,pcNames,rgBstrNames) (This)->lpVtbl->GetFieldNames(This,pcNames,rgBstrNames) #define IRecordInfo_IsMatchingType(This,pRecordInfo) (This)->lpVtbl->IsMatchingType(This,pRecordInfo) #define IRecordInfo_RecordCreate(This) (This)->lpVtbl->RecordCreate(This) #define IRecordInfo_RecordCreateCopy(This,pvSource,ppvDest) (This)->lpVtbl->RecordCreateCopy(This,pvSource,ppvDest) #define IRecordInfo_RecordDestroy(This,pvRecord) (This)->lpVtbl->RecordDestroy(This,pvRecord) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IRecordInfo_QueryInterface(IRecordInfo* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IRecordInfo_AddRef(IRecordInfo* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IRecordInfo_Release(IRecordInfo* This) { return This->lpVtbl->Release(This); } /*** IRecordInfo methods ***/ static FORCEINLINE HRESULT IRecordInfo_RecordInit(IRecordInfo* This,PVOID pvNew) { return This->lpVtbl->RecordInit(This,pvNew); } static FORCEINLINE HRESULT IRecordInfo_RecordClear(IRecordInfo* This,PVOID pvExisting) { return This->lpVtbl->RecordClear(This,pvExisting); } static FORCEINLINE HRESULT IRecordInfo_RecordCopy(IRecordInfo* This,PVOID pvExisting,PVOID pvNew) { return This->lpVtbl->RecordCopy(This,pvExisting,pvNew); } static FORCEINLINE HRESULT IRecordInfo_GetGuid(IRecordInfo* This,GUID *pguid) { return This->lpVtbl->GetGuid(This,pguid); } static FORCEINLINE HRESULT IRecordInfo_GetName(IRecordInfo* This,BSTR *pbstrName) { return This->lpVtbl->GetName(This,pbstrName); } static FORCEINLINE HRESULT IRecordInfo_GetSize(IRecordInfo* This,ULONG *pcbSize) { return This->lpVtbl->GetSize(This,pcbSize); } static FORCEINLINE HRESULT IRecordInfo_GetTypeInfo(IRecordInfo* This,ITypeInfo **ppTypeInfo) { return This->lpVtbl->GetTypeInfo(This,ppTypeInfo); } static FORCEINLINE HRESULT IRecordInfo_GetField(IRecordInfo* This,PVOID pvData,LPCOLESTR szFieldName,VARIANT *pvarField) { return This->lpVtbl->GetField(This,pvData,szFieldName,pvarField); } static FORCEINLINE HRESULT IRecordInfo_GetFieldNoCopy(IRecordInfo* This,PVOID pvData,LPCOLESTR szFieldName,VARIANT *pvarField,PVOID *ppvDataCArray) { return This->lpVtbl->GetFieldNoCopy(This,pvData,szFieldName,pvarField,ppvDataCArray); } static FORCEINLINE HRESULT IRecordInfo_PutField(IRecordInfo* This,ULONG wFlags,PVOID pvData,LPCOLESTR szFieldName,VARIANT *pvarField) { return This->lpVtbl->PutField(This,wFlags,pvData,szFieldName,pvarField); } static FORCEINLINE HRESULT IRecordInfo_PutFieldNoCopy(IRecordInfo* This,ULONG wFlags,PVOID pvData,LPCOLESTR szFieldName,VARIANT *pvarField) { return This->lpVtbl->PutFieldNoCopy(This,wFlags,pvData,szFieldName,pvarField); } static FORCEINLINE HRESULT IRecordInfo_GetFieldNames(IRecordInfo* This,ULONG *pcNames,BSTR *rgBstrNames) { return This->lpVtbl->GetFieldNames(This,pcNames,rgBstrNames); } static FORCEINLINE WINBOOL IRecordInfo_IsMatchingType(IRecordInfo* This,IRecordInfo *pRecordInfo) { return This->lpVtbl->IsMatchingType(This,pRecordInfo); } static FORCEINLINE PVOID IRecordInfo_RecordCreate(IRecordInfo* This) { return This->lpVtbl->RecordCreate(This); } static FORCEINLINE HRESULT IRecordInfo_RecordCreateCopy(IRecordInfo* This,PVOID pvSource,PVOID *ppvDest) { return This->lpVtbl->RecordCreateCopy(This,pvSource,ppvDest); } static FORCEINLINE HRESULT IRecordInfo_RecordDestroy(IRecordInfo* This,PVOID pvRecord) { return This->lpVtbl->RecordDestroy(This,pvRecord); } #endif #endif #endif #endif /* __IRecordInfo_INTERFACE_DEFINED__ */ /***************************************************************************** * IErrorLog interface */ #ifndef __IErrorLog_INTERFACE_DEFINED__ #define __IErrorLog_INTERFACE_DEFINED__ typedef IErrorLog *LPERRORLOG; DEFINE_GUID(IID_IErrorLog, 0x3127ca40, 0x446e, 0x11ce, 0x81,0x35, 0x00,0xaa,0x00,0x4b,0xb8,0x51); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("3127ca40-446e-11ce-8135-00aa004bb851") IErrorLog : public IUnknown { virtual HRESULT STDMETHODCALLTYPE AddError( LPCOLESTR pszPropName, EXCEPINFO *pExcepInfo) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IErrorLog, 0x3127ca40, 0x446e, 0x11ce, 0x81,0x35, 0x00,0xaa,0x00,0x4b,0xb8,0x51) #endif #else typedef struct IErrorLogVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IErrorLog *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IErrorLog *This); ULONG (STDMETHODCALLTYPE *Release)( IErrorLog *This); /*** IErrorLog methods ***/ HRESULT (STDMETHODCALLTYPE *AddError)( IErrorLog *This, LPCOLESTR pszPropName, EXCEPINFO *pExcepInfo); END_INTERFACE } IErrorLogVtbl; interface IErrorLog { CONST_VTBL IErrorLogVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IErrorLog_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IErrorLog_AddRef(This) (This)->lpVtbl->AddRef(This) #define IErrorLog_Release(This) (This)->lpVtbl->Release(This) /*** IErrorLog methods ***/ #define IErrorLog_AddError(This,pszPropName,pExcepInfo) (This)->lpVtbl->AddError(This,pszPropName,pExcepInfo) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IErrorLog_QueryInterface(IErrorLog* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IErrorLog_AddRef(IErrorLog* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IErrorLog_Release(IErrorLog* This) { return This->lpVtbl->Release(This); } /*** IErrorLog methods ***/ static FORCEINLINE HRESULT IErrorLog_AddError(IErrorLog* This,LPCOLESTR pszPropName,EXCEPINFO *pExcepInfo) { return This->lpVtbl->AddError(This,pszPropName,pExcepInfo); } #endif #endif #endif #endif /* __IErrorLog_INTERFACE_DEFINED__ */ /***************************************************************************** * IPropertyBag interface */ #ifndef __IPropertyBag_INTERFACE_DEFINED__ #define __IPropertyBag_INTERFACE_DEFINED__ typedef IPropertyBag *LPPROPERTYBAG; DEFINE_GUID(IID_IPropertyBag, 0x55272a00, 0x42cb, 0x11ce, 0x81,0x35, 0x00,0xaa,0x00,0x4b,0xb8,0x51); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("55272a00-42cb-11ce-8135-00aa004bb851") IPropertyBag : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Read( LPCOLESTR pszPropName, VARIANT *pVar, IErrorLog *pErrorLog) = 0; virtual HRESULT STDMETHODCALLTYPE Write( LPCOLESTR pszPropName, VARIANT *pVar) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertyBag, 0x55272a00, 0x42cb, 0x11ce, 0x81,0x35, 0x00,0xaa,0x00,0x4b,0xb8,0x51) #endif #else typedef struct IPropertyBagVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertyBag *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertyBag *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertyBag *This); /*** IPropertyBag methods ***/ HRESULT (STDMETHODCALLTYPE *Read)( IPropertyBag *This, LPCOLESTR pszPropName, VARIANT *pVar, IErrorLog *pErrorLog); HRESULT (STDMETHODCALLTYPE *Write)( IPropertyBag *This, LPCOLESTR pszPropName, VARIANT *pVar); END_INTERFACE } IPropertyBagVtbl; interface IPropertyBag { CONST_VTBL IPropertyBagVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertyBag_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertyBag_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertyBag_Release(This) (This)->lpVtbl->Release(This) /*** IPropertyBag methods ***/ #define IPropertyBag_Read(This,pszPropName,pVar,pErrorLog) (This)->lpVtbl->Read(This,pszPropName,pVar,pErrorLog) #define IPropertyBag_Write(This,pszPropName,pVar) (This)->lpVtbl->Write(This,pszPropName,pVar) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertyBag_QueryInterface(IPropertyBag* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertyBag_AddRef(IPropertyBag* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertyBag_Release(IPropertyBag* This) { return This->lpVtbl->Release(This); } /*** IPropertyBag methods ***/ static FORCEINLINE HRESULT IPropertyBag_Read(IPropertyBag* This,LPCOLESTR pszPropName,VARIANT *pVar,IErrorLog *pErrorLog) { return This->lpVtbl->Read(This,pszPropName,pVar,pErrorLog); } static FORCEINLINE HRESULT IPropertyBag_Write(IPropertyBag* This,LPCOLESTR pszPropName,VARIANT *pVar) { return This->lpVtbl->Write(This,pszPropName,pVar); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IPropertyBag_RemoteRead_Proxy( IPropertyBag* This, LPCOLESTR pszPropName, VARIANT *pVar, IErrorLog *pErrorLog, DWORD varType, IUnknown *pUnkObj); void __RPC_STUB IPropertyBag_RemoteRead_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IPropertyBag_Read_Proxy( IPropertyBag* This, LPCOLESTR pszPropName, VARIANT *pVar, IErrorLog *pErrorLog); HRESULT __RPC_STUB IPropertyBag_Read_Stub( IPropertyBag* This, LPCOLESTR pszPropName, VARIANT *pVar, IErrorLog *pErrorLog, DWORD varType, IUnknown *pUnkObj); #endif /* __IPropertyBag_INTERFACE_DEFINED__ */ #endif /* Begin additional prototypes for all interfaces */ ULONG __RPC_USER VARIANT_UserSize (ULONG *, ULONG, VARIANT *); unsigned char * __RPC_USER VARIANT_UserMarshal (ULONG *, unsigned char *, VARIANT *); unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *); void __RPC_USER VARIANT_UserFree (ULONG *, VARIANT *); ULONG __RPC_USER BSTR_UserSize (ULONG *, ULONG, BSTR *); unsigned char * __RPC_USER BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *); unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *); void __RPC_USER BSTR_UserFree (ULONG *, BSTR *); ULONG __RPC_USER CLEANLOCALSTORAGE_UserSize (ULONG *, ULONG, CLEANLOCALSTORAGE *); unsigned char * __RPC_USER CLEANLOCALSTORAGE_UserMarshal (ULONG *, unsigned char *, CLEANLOCALSTORAGE *); unsigned char * __RPC_USER CLEANLOCALSTORAGE_UserUnmarshal(ULONG *, unsigned char *, CLEANLOCALSTORAGE *); void __RPC_USER CLEANLOCALSTORAGE_UserFree (ULONG *, CLEANLOCALSTORAGE *); /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __oaidl_h__ */