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