1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015 |
- cpp_quote("/**")
- cpp_quote(" * This file is part of the mingw-w64 runtime package.")
- cpp_quote(" * No warranty is given; refer to the file DISCLAIMER within this package.")
- cpp_quote(" */")
- cpp_quote("")
- cpp_quote("#include <winapifamily.h>")
- #ifndef DO_NO_IMPORTS
- import "objidl.idl";
- #endif
- cpp_quote("")
- cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
- interface ICreateTypeInfo;
- interface ICreateTypeInfo2;
- interface ICreateTypeLib;
- interface ICreateTypeLib2;
- cpp_quote("#endif")
- cpp_quote("")
- cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
- interface IDispatch;
- interface IEnumVARIANT;
- interface ITypeComp;
- cpp_quote("#endif")
- cpp_quote("")
- cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
- interface ITypeInfo;
- interface ITypeInfo2;
- interface ITypeLib;
- interface ITypeLib2;
- interface ITypeChangeEvents;
- interface IErrorInfo;
- interface ICreateErrorInfo;
- interface ISupportErrorInfo;
- interface ITypeFactory;
- interface ITypeMarshal;
- interface IRecordInfo;
- cpp_quote("#endif")
- cpp_quote("")
- cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
- [version (1.0), pointer_default (unique)]
- interface IOleAutomationTypes {
- typedef CY CURRENCY;
- typedef struct tagSAFEARRAYBOUND {
- ULONG cElements;
- LONG lLbound;
- } SAFEARRAYBOUND,*LPSAFEARRAYBOUND;
- cpp_quote("")
- typedef [unique] struct _wireVARIANT *wireVARIANT;
- typedef [unique] struct _wireBRECORD *wireBRECORD;
- cpp_quote("")
- typedef struct _wireSAFEARR_BSTR {
- ULONG Size;
- [size_is (Size), ref] wireBSTR *aBstr;
- } SAFEARR_BSTR;
- cpp_quote("")
- typedef struct _wireSAFEARR_UNKNOWN {
- ULONG Size;
- [size_is (Size), ref] IUnknown **apUnknown;
- } SAFEARR_UNKNOWN;
- cpp_quote("")
- typedef struct _wireSAFEARR_DISPATCH {
- ULONG Size;
- [size_is (Size), ref] IDispatch **apDispatch;
- } SAFEARR_DISPATCH;
- cpp_quote("")
- typedef struct _wireSAFEARR_VARIANT {
- ULONG Size;
- [size_is (Size), ref] wireVARIANT *aVariant;
- } SAFEARR_VARIANT;
- cpp_quote("")
- typedef struct _wireSAFEARR_BRECORD {
- ULONG Size;
- [size_is (Size), ref] wireBRECORD *aRecord;
- } SAFEARR_BRECORD;
- cpp_quote("")
- typedef struct _wireSAFEARR_HAVEIID {
- ULONG Size;
- [size_is (Size), ref] IUnknown **apUnknown;
- IID iid;
- } SAFEARR_HAVEIID;
- cpp_quote("")
- typedef [v1_enum] 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;
- cpp_quote("")
- typedef union _wireSAFEARRAY_UNION switch (ULONG sfType) u {
- case SF_BSTR: SAFEARR_BSTR BstrStr;
- case SF_UNKNOWN: SAFEARR_UNKNOWN UnknownStr;
- case SF_DISPATCH: SAFEARR_DISPATCH DispatchStr;
- case SF_VARIANT: SAFEARR_VARIANT VariantStr;
- case SF_RECORD: SAFEARR_BRECORD RecordStr;
- case SF_HAVEIID: SAFEARR_HAVEIID HaveIidStr;
- case SF_I1: BYTE_SIZEDARR ByteStr;
- case SF_I2: WORD_SIZEDARR WordStr;
- case SF_I4: DWORD_SIZEDARR LongStr;
- case SF_I8: HYPER_SIZEDARR HyperStr;
- } SAFEARRAYUNION;
- cpp_quote("")
- typedef [unique] struct _wireSAFEARRAY {
- USHORT cDims;
- USHORT fFeatures;
- ULONG cbElements;
- ULONG cLocks;
- SAFEARRAYUNION uArrayStructs;
- [size_is (cDims)] SAFEARRAYBOUND rgsabound[];
- } *wireSAFEARRAY;
- typedef [unique] wireSAFEARRAY *wirePSAFEARRAY;
- cpp_quote("")
- typedef struct tagSAFEARRAY {
- USHORT cDims;
- USHORT fFeatures;
- ULONG cbElements;
- ULONG cLocks;
- PVOID pvData;
- SAFEARRAYBOUND rgsabound[];
- } SAFEARRAY;
- typedef [wire_marshal (wirePSAFEARRAY)] SAFEARRAY *LPSAFEARRAY;
- cpp_quote("")
- const USHORT FADF_AUTO = 0x0001;
- const USHORT FADF_STATIC = 0x0002;
- const USHORT FADF_EMBEDDED = 0x0004;
- const USHORT FADF_FIXEDSIZE = 0x0010;
- const USHORT FADF_RECORD = 0x0020;
- const USHORT FADF_HAVEIID = 0x0040;
- const USHORT FADF_HAVEVARTYPE= 0x0080;
- const USHORT FADF_BSTR = 0x0100;
- const USHORT FADF_UNKNOWN = 0x0200;
- const USHORT FADF_DISPATCH = 0x0400;
- const USHORT FADF_VARIANT = 0x0800;
- const USHORT FADF_RESERVED = 0xf008;
- cpp_quote("")
- cpp_quote("/* Kludge for 3.0 release to disable new default-behavior.")
- cpp_quote(" * For now we define _FORCENAMELESSUNION. For 4.0 this define")
- cpp_quote(" * will be removed. */")
- cpp_quote("#ifndef _FORCENAMELESSUNION")
- cpp_quote("#define _FORCENAMELESSUNION 1")
- cpp_quote("#endif")
- cpp_quote("")
- cpp_quote("#if (__STDC__ && !defined(__cplusplus) && !defined(_FORCENAMELESSUNION)) || defined(NONAMELESSUNION) || (defined (_MSC_VER) && !defined(_MSC_EXTENSIONS) && !defined(_FORCENAMELESSUNION))")
- cpp_quote("#define __VARIANT_NAME_1 n1")
- cpp_quote("#define __VARIANT_NAME_2 n2")
- cpp_quote("#define __VARIANT_NAME_3 n3")
- cpp_quote("#define __VARIANT_NAME_4 brecVal")
- cpp_quote("#else")
- cpp_quote("#define __tagVARIANT")
- cpp_quote("#define __VARIANT_NAME_1")
- cpp_quote("#define __VARIANT_NAME_2")
- cpp_quote("#define __VARIANT_NAME_3")
- cpp_quote("#define __tagBRECORD")
- cpp_quote("#define __VARIANT_NAME_4")
- cpp_quote("#endif")
- cpp_quote("")
- typedef [wire_marshal (wireVARIANT)] struct tagVARIANT VARIANT;
- cpp_quote("")
- struct tagVARIANT {
- union {
- struct __tagVARIANT {
- VARTYPE vt;
- WORD wReserved1;
- WORD wReserved2;
- WORD wReserved3;
- union {
- LONGLONG llVal;
- LONG lVal;
- BYTE bVal;
- SHORT iVal;
- FLOAT fltVal;
- DOUBLE dblVal;
- VARIANT_BOOL boolVal;
- /* Removed due conflict with bool and gcc's inablity to express a macro expanding to a comment.
- _VARIANT_BOOL bool; */
- SCODE scode;
- CY cyVal;
- DATE date;
- BSTR bstrVal;
- IUnknown *punkVal;
- IDispatch *pdispVal;
- SAFEARRAY *parray;
- BYTE *pbVal;
- SHORT *piVal;
- LONG *plVal;
- LONGLONG *pllVal;
- FLOAT *pfltVal;
- DOUBLE *pdblVal;
- VARIANT_BOOL *pboolVal;
- /* Removed due conflict with bool and gcc's inablity to express a macro expanding to a comment.
- _VARIANT_BOOL *pbool; */
- SCODE *pscode;
- CY *pcyVal;
- DATE *pdate;
- BSTR *pbstrVal;
- IUnknown **ppunkVal;
- IDispatch **ppdispVal;
- SAFEARRAY **pparray;
- VARIANT *pvarVal;
- PVOID byref;
- CHAR cVal;
- USHORT uiVal;
- ULONG ulVal;
- ULONGLONG ullVal;
- INT intVal;
- UINT uintVal;
- DECIMAL *pdecVal;
- CHAR *pcVal;
- USHORT *puiVal;
- ULONG *pulVal;
- ULONGLONG *pullVal;
- INT *pintVal;
- UINT *puintVal;
- struct __tagBRECORD {
- PVOID pvRecord;
- IRecordInfo *pRecInfo;
- } __VARIANT_NAME_4;
- } __VARIANT_NAME_3;
- } __VARIANT_NAME_2;
- DECIMAL decVal;
- } __VARIANT_NAME_1;
- };
- cpp_quote("")
- typedef VARIANT *LPVARIANT;
- typedef VARIANT VARIANTARG;
- typedef VARIANT *LPVARIANTARG;
- cpp_quote("#if 0")
- typedef const VARIANT *REFVARIANT;
- cpp_quote("#else")
- cpp_quote("")
- cpp_quote("#ifndef _REFVARIANT_DEFINED")
- cpp_quote("#define _REFVARIANT_DEFINED")
- cpp_quote("#ifdef __cplusplus")
- cpp_quote("#define REFVARIANT const VARIANT &")
- cpp_quote("#else")
- cpp_quote("#define REFVARIANT const VARIANT * __MIDL_CONST")
- cpp_quote("#endif")
- cpp_quote("#endif")
- cpp_quote("#endif")
- cpp_quote("")
- struct _wireBRECORD {
- ULONG fFlags;
- ULONG clSize;
- IRecordInfo *pRecInfo;
- [size_is (clSize)] byte *pRecord;
- };
- cpp_quote("")
- struct _wireVARIANT {
- DWORD clSize;
- DWORD rpcReserved;
- USHORT vt;
- USHORT wReserved1;
- USHORT wReserved2;
- USHORT wReserved3;
- [switch_type (ULONG), switch_is (vt)] union {
- [case (VT_I8)] LONGLONG llVal;
- [case (VT_I4)] LONG lVal;
- [case (VT_UI1)] BYTE bVal;
- [case (VT_I2)] SHORT iVal;
- [case (VT_R4)] FLOAT fltVal;
- [case (VT_R8)] DOUBLE dblVal;
- [case (VT_BOOL)] VARIANT_BOOL boolVal;
- [case (VT_ERROR)] SCODE scode;
- [case (VT_CY)] CY cyVal;
- [case (VT_DATE)] DATE date;
- [case (VT_BSTR)] wireBSTR bstrVal;
- [case (VT_UNKNOWN)] IUnknown *punkVal;
- [case (VT_DISPATCH)] IDispatch *pdispVal;
- [case (VT_ARRAY)] wirePSAFEARRAY parray;
- [case (VT_RECORD, VT_RECORD|VT_BYREF)]
- wireBRECORD brecVal;
- [case (VT_UI1|VT_BYREF)]
- BYTE *pbVal;
- [case (VT_I2|VT_BYREF)]
- SHORT *piVal;
- [case (VT_I4|VT_BYREF)]
- LONG *plVal;
- [case (VT_I8|VT_BYREF)]
- LONGLONG *pllVal;
- [case (VT_R4|VT_BYREF)]
- FLOAT *pfltVal;
- [case (VT_R8|VT_BYREF)]
- DOUBLE *pdblVal;
- [case (VT_BOOL|VT_BYREF)]
- VARIANT_BOOL *pboolVal;
- [case (VT_ERROR|VT_BYREF)]
- SCODE *pscode;
- [case (VT_CY|VT_BYREF)]
- CY *pcyVal;
- [case (VT_DATE|VT_BYREF)]
- DATE *pdate;
- [case (VT_BSTR|VT_BYREF)]
- wireBSTR *pbstrVal;
- [case (VT_UNKNOWN|VT_BYREF)]
- IUnknown **ppunkVal;
- [case (VT_DISPATCH|VT_BYREF)]
- IDispatch **ppdispVal;
- [case (VT_ARRAY|VT_BYREF)]
- wirePSAFEARRAY *pparray;
- [case (VT_VARIANT|VT_BYREF)]
- wireVARIANT *pvarVal;
- [case (VT_I1)] CHAR cVal;
- [case (VT_UI2)] USHORT uiVal;
- [case (VT_UI4)] ULONG ulVal;
- [case (VT_UI8)] ULONGLONG ullVal;
- [case (VT_INT)] INT intVal;
- [case (VT_UINT)] UINT uintVal;
- [case (VT_DECIMAL)] DECIMAL decVal;
- [case (VT_BYREF|VT_DECIMAL)]
- DECIMAL *pdecVal;
- [case (VT_BYREF|VT_I1)]
- CHAR *pcVal;
- [case (VT_BYREF|VT_UI2)]
- USHORT *puiVal;
- [case (VT_BYREF|VT_UI4)]
- ULONG *pulVal;
- [case (VT_BYREF|VT_UI8)]
- ULONGLONG *pullVal;
- [case (VT_BYREF|VT_INT)]
- INT *pintVal;
- [case (VT_BYREF|VT_UINT)]
- UINT *puintVal;
- [case (VT_EMPTY)];
- [case (VT_NULL)];
- };
- };
- cpp_quote("")
- typedef LONG DISPID;
- typedef DISPID MEMBERID;
- typedef DWORD HREFTYPE;
- typedef [v1_enum] enum tagTYPEKIND {
- TKIND_ENUM = 0,
- TKIND_RECORD,
- TKIND_MODULE,
- TKIND_INTERFACE,
- TKIND_DISPATCH,
- TKIND_COCLASS,
- TKIND_ALIAS,
- TKIND_UNION,
- TKIND_MAX
- } TYPEKIND;
- cpp_quote("")
- typedef struct tagTYPEDESC {
- [switch_type (VARTYPE), switch_is (vt)] union {
- [case (VT_PTR, VT_SAFEARRAY)] struct tagTYPEDESC *lptdesc;
- [case (VT_CARRAY)] struct tagARRAYDESC *lpadesc;
- [case (VT_USERDEFINED)] HREFTYPE hreftype;
- [default];
- };
- VARTYPE vt;
- } TYPEDESC;
- cpp_quote("")
- typedef struct tagARRAYDESC {
- TYPEDESC tdescElem;
- USHORT cDims;
- [size_is (cDims)] SAFEARRAYBOUND rgbounds[];
- } ARRAYDESC;
- cpp_quote("")
- typedef struct tagPARAMDESCEX {
- ULONG cBytes;
- VARIANTARG varDefaultValue;
- } PARAMDESCEX,*LPPARAMDESCEX;
- cpp_quote("")
- typedef struct tagPARAMDESC {
- LPPARAMDESCEX pparamdescex;
- USHORT wParamFlags;
- } PARAMDESC,*LPPARAMDESC;
- cpp_quote("")
- const USHORT PARAMFLAG_NONE = 0x00;
- const USHORT PARAMFLAG_FIN = 0x01;
- const USHORT PARAMFLAG_FOUT = 0x02;
- const USHORT PARAMFLAG_FLCID = 0x04;
- const USHORT PARAMFLAG_FRETVAL = 0x08;
- const USHORT PARAMFLAG_FOPT = 0x10;
- const USHORT PARAMFLAG_FHASDEFAULT = 0x20;
- const USHORT PARAMFLAG_FHASCUSTDATA = 0x40;
- cpp_quote("")
- typedef struct tagIDLDESC {
- ULONG_PTR dwReserved;
- USHORT wIDLFlags;
- } IDLDESC,*LPIDLDESC;
- cpp_quote("")
- const USHORT IDLFLAG_NONE = PARAMFLAG_NONE;
- const USHORT IDLFLAG_FIN = PARAMFLAG_FIN;
- const USHORT IDLFLAG_FOUT = PARAMFLAG_FOUT;
- const USHORT IDLFLAG_FLCID = PARAMFLAG_FLCID;
- const USHORT IDLFLAG_FRETVAL = PARAMFLAG_FRETVAL;
- cpp_quote("")
- cpp_quote("#if 0")
- typedef struct tagELEMDESC {
- TYPEDESC tdesc;
- PARAMDESC paramdesc;
- } ELEMDESC;
- cpp_quote("#else")
- cpp_quote("")
- cpp_quote(" typedef struct tagELEMDESC {")
- cpp_quote(" TYPEDESC tdesc;")
- cpp_quote(" __C89_NAMELESS union {")
- cpp_quote(" IDLDESC idldesc;")
- cpp_quote(" PARAMDESC paramdesc;")
- cpp_quote(" } DUMMYUNIONNAME;")
- cpp_quote(" } ELEMDESC,*LPELEMDESC;")
- cpp_quote("#endif")
- cpp_quote("")
- 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;
- cpp_quote("")
- typedef struct tagDISPPARAMS {
- [size_is (cArgs)] VARIANTARG *rgvarg;
- [size_is (cNamedArgs)] DISPID *rgdispidNamedArgs;
- UINT cArgs;
- UINT cNamedArgs;
- } DISPPARAMS;
- cpp_quote("")
- cpp_quote("#if 0")
- typedef struct tagEXCEPINFO {
- WORD wCode;
- WORD wReserved;
- BSTR bstrSource;
- BSTR bstrDescription;
- BSTR bstrHelpFile;
- DWORD dwHelpContext;
- ULONG_PTR pvReserved;
- ULONG_PTR pfnDeferredFillIn;
- SCODE scode;
- } EXCEPINFO;
- cpp_quote("#else")
- cpp_quote(" typedef struct tagEXCEPINFO {")
- cpp_quote(" WORD wCode;")
- cpp_quote(" WORD wReserved;")
- cpp_quote(" BSTR bstrSource;")
- cpp_quote(" BSTR bstrDescription;")
- cpp_quote(" BSTR bstrHelpFile;")
- cpp_quote(" DWORD dwHelpContext;")
- cpp_quote(" PVOID pvReserved;")
- cpp_quote(" HRESULT (__stdcall *pfnDeferredFillIn)(struct tagEXCEPINFO *);")
- cpp_quote(" SCODE scode;")
- cpp_quote(" } EXCEPINFO, *LPEXCEPINFO;")
- cpp_quote("#endif")
- cpp_quote("")
- typedef [v1_enum] 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;
- cpp_quote("")
- typedef [v1_enum] enum tagFUNCKIND {
- FUNC_VIRTUAL,
- FUNC_PUREVIRTUAL,
- FUNC_NONVIRTUAL,
- FUNC_STATIC,
- FUNC_DISPATCH
- } FUNCKIND;
- cpp_quote("")
- typedef [v1_enum] enum tagINVOKEKIND {
- INVOKE_FUNC = 1,
- INVOKE_PROPERTYGET = 2,
- INVOKE_PROPERTYPUT = 4,
- INVOKE_PROPERTYPUTREF = 8
- } INVOKEKIND;
- cpp_quote("")
- typedef struct tagFUNCDESC {
- MEMBERID memid;
- [size_is (cScodes)] SCODE *lprgscode;
- [size_is (cParams)] ELEMDESC *lprgelemdescParam;
- FUNCKIND funckind;
- INVOKEKIND invkind;
- CALLCONV callconv;
- SHORT cParams;
- SHORT cParamsOpt;
- SHORT oVft;
- SHORT cScodes;
- ELEMDESC elemdescFunc;
- WORD wFuncFlags;
- } FUNCDESC,*LPFUNCDESC;
- cpp_quote("")
- typedef [v1_enum] enum tagVARKIND {
- VAR_PERINSTANCE,
- VAR_STATIC,
- VAR_CONST,
- VAR_DISPATCH
- } VARKIND;
- cpp_quote("")
- const USHORT IMPLTYPEFLAG_FDEFAULT = 0x1;
- const USHORT IMPLTYPEFLAG_FSOURCE = 0x2;
- const USHORT IMPLTYPEFLAG_FRESTRICTED = 0x4;
- const USHORT IMPLTYPEFLAG_FDEFAULTVTABLE= 0x8;
- cpp_quote("")
- typedef struct tagVARDESC {
- MEMBERID memid;
- LPOLESTR lpstrSchema;
- [switch_type (VARKIND), switch_is (varkind)] union {
- [case (VAR_PERINSTANCE, VAR_DISPATCH, VAR_STATIC)] ULONG oInst;
- [case (VAR_CONST)] VARIANT *lpvarValue;
- };
- ELEMDESC elemdescVar;
- WORD wVarFlags;
- VARKIND varkind;
- } VARDESC,*LPVARDESC;
- cpp_quote("")
- typedef enum tagTYPEFLAGS {
- TYPEFLAG_FAPPOBJECT = 0x01,
- TYPEFLAG_FCANCREATE = 0x02,
- TYPEFLAG_FLICENSED = 0x04,
- TYPEFLAG_FPREDECLID = 0x08,
- 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;
- cpp_quote("")
- 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;
- cpp_quote("")
- 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;
- cpp_quote("")
- typedef [wire_marshal (DWORD)] struct tagCLEANLOCALSTORAGE {
- IUnknown *pInterface;
- PVOID pStorage;
- DWORD flags;
- } CLEANLOCALSTORAGE;
- cpp_quote("")
- typedef struct tagCUSTDATAITEM {
- GUID guid;
- VARIANTARG varValue;
- } CUSTDATAITEM,*LPCUSTDATAITEM;
- cpp_quote("")
- typedef struct tagCUSTDATA {
- DWORD cCustData;
- [size_is (cCustData)] LPCUSTDATAITEM prgCustData;
- } CUSTDATA,*LPCUSTDATA;
- }
- cpp_quote("#endif")
- cpp_quote("")
- cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
- [object, uuid (00020405-0000-0000-C000-000000000046), pointer_default (unique), local]
- interface ICreateTypeInfo: IUnknown {
- typedef [unique] ICreateTypeInfo *LPCREATETYPEINFO;
- cpp_quote("")
- HRESULT SetGuid ([in] REFGUID guid);
- HRESULT SetTypeFlags ([in] UINT uTypeFlags);
- HRESULT SetDocString ([in] LPOLESTR pStrDoc);
- HRESULT SetHelpContext ([in] DWORD dwHelpContext);
- HRESULT SetVersion ([in] WORD wMajorVerNum,[in] WORD wMinorVerNum);
- HRESULT AddRefTypeInfo ([in] ITypeInfo *pTInfo,[in] HREFTYPE *phRefType);
- HRESULT AddFuncDesc ([in] UINT index,[in] FUNCDESC *pFuncDesc);
- HRESULT AddImplType ([in] UINT index,[in] HREFTYPE hRefType);
- HRESULT SetImplTypeFlags ([in] UINT index,[in] INT implTypeFlags);
- HRESULT SetAlignment ([in] WORD cbAlignment);
- HRESULT SetSchema ([in] LPOLESTR pStrSchema);
- HRESULT AddVarDesc ([in] UINT index,[in] VARDESC *pVarDesc);
- HRESULT SetFuncAndParamNames ([in] UINT index,[in, size_is ((UINT) cNames)] LPOLESTR *rgszNames,[in] UINT cNames);
- HRESULT SetVarName ([in] UINT index,[in] LPOLESTR szName);
- HRESULT SetTypeDescAlias ([in] TYPEDESC *pTDescAlias);
- HRESULT DefineFuncAsDllEntry ([in] UINT index,[in] LPOLESTR szDllName,[in] LPOLESTR szProcName);
- HRESULT SetFuncDocString ([in] UINT index,[in] LPOLESTR szDocString);
- HRESULT SetVarDocString ([in] UINT index,[in] LPOLESTR szDocString);
- HRESULT SetFuncHelpContext ([in] UINT index,[in] DWORD dwHelpContext);
- HRESULT SetVarHelpContext ([in] UINT index,[in] DWORD dwHelpContext);
- HRESULT SetMops ([in] UINT index,[in] BSTR bstrMops);
- HRESULT SetTypeIdldesc ([in] IDLDESC *pIdlDesc);
- HRESULT LayOut (void);
- }
- cpp_quote("")
- [object, uuid (0002040e-0000-0000-C000-000000000046), pointer_default (unique), local]
- interface ICreateTypeInfo2: ICreateTypeInfo {
- typedef [unique] ICreateTypeInfo2 *LPCREATETYPEINFO2;
- cpp_quote("")
- HRESULT DeleteFuncDesc ([in] UINT index);
- HRESULT DeleteFuncDescByMemId ([in] MEMBERID memid,[in] INVOKEKIND invKind);
- HRESULT DeleteVarDesc ([in] UINT index);
- HRESULT DeleteVarDescByMemId ([in] MEMBERID memid);
- HRESULT DeleteImplType ([in] UINT index);
- HRESULT SetCustData ([in] REFGUID guid,[in] VARIANT *pVarVal);
- HRESULT SetFuncCustData ([in] UINT index,[in] REFGUID guid,[in] VARIANT *pVarVal);
- HRESULT SetParamCustData ([in] UINT indexFunc,[in] UINT indexParam,[in] REFGUID guid,[in] VARIANT *pVarVal);
- HRESULT SetVarCustData ([in] UINT index,[in] REFGUID guid,[in] VARIANT *pVarVal);
- HRESULT SetImplTypeCustData ([in] UINT index,[in] REFGUID guid,[in] VARIANT *pVarVal);
- HRESULT SetHelpStringContext ([in] ULONG dwHelpStringContext);
- HRESULT SetFuncHelpStringContext ([in] UINT index,[in] ULONG dwHelpStringContext);
- HRESULT SetVarHelpStringContext ([in] UINT index,[in] ULONG dwHelpStringContext);
- HRESULT Invalidate (void);
- HRESULT SetName ([in] LPOLESTR szName);
- }
- cpp_quote("")
- [object, uuid (00020406-0000-0000-C000-000000000046), pointer_default (unique), local]
- interface ICreateTypeLib : IUnknown {
- typedef [unique] ICreateTypeLib *LPCREATETYPELIB;
- cpp_quote("")
- HRESULT CreateTypeInfo ([in] LPOLESTR szName,[in] TYPEKIND tkind,[out] ICreateTypeInfo **ppCTInfo);
- HRESULT SetName ([in] LPOLESTR szName);
- HRESULT SetVersion ([in] WORD wMajorVerNum,[in] WORD wMinorVerNum);
- HRESULT SetGuid ([in] REFGUID guid);
- HRESULT SetDocString ([in] LPOLESTR szDoc);
- HRESULT SetHelpFileName ([in] LPOLESTR szHelpFileName);
- HRESULT SetHelpContext ([in] DWORD dwHelpContext);
- HRESULT SetLcid ([in] LCID lcid);
- HRESULT SetLibFlags ([in] UINT uLibFlags);
- HRESULT SaveAllChanges (void);
- }
- cpp_quote("")
- [object, uuid (0002040f-0000-0000-C000-000000000046), pointer_default (unique), local]
- interface ICreateTypeLib2 : ICreateTypeLib {
- typedef [unique] ICreateTypeLib2 *LPCREATETYPELIB2;
- HRESULT DeleteTypeInfo ([in] LPOLESTR szName);
- HRESULT SetCustData ([in] REFGUID guid,[in] VARIANT *pVarVal);
- HRESULT SetHelpStringContext ([in] ULONG dwHelpStringContext);
- HRESULT SetHelpStringDll ([in] LPOLESTR szFileName);
- }
- cpp_quote("#endif")
- cpp_quote("")
- cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
- [object, uuid (00020400-0000-0000-C000-000000000046), pointer_default (unique)]
- interface IDispatch : IUnknown {
- typedef [unique] IDispatch *LPDISPATCH;
- cpp_quote("")
- HRESULT GetTypeInfoCount ([out] UINT *pctinfo);
- HRESULT GetTypeInfo ([in] UINT iTInfo,[in] LCID lcid,[out] ITypeInfo **ppTInfo);
- HRESULT GetIDsOfNames ([in] REFIID riid,[in, size_is (cNames)] LPOLESTR *rgszNames,[in, range (0, 16384)] UINT cNames,[in] LCID lcid,[out, size_is (cNames)] DISPID *rgDispId);
- [local] HRESULT Invoke ([in] DISPID dispIdMember,[in] REFIID riid,[in] LCID lcid,[in] WORD wFlags,[in, out] DISPPARAMS *pDispParams,[out] VARIANT *pVarResult,[out] EXCEPINFO *pExcepInfo,[out] UINT *puArgErr);
- [call_as (Invoke)] HRESULT RemoteInvoke ([in] DISPID dispIdMember,[in] REFIID riid,[in] LCID lcid,[in] DWORD dwFlags,[in] DISPPARAMS *pDispParams,[out] VARIANT *pVarResult,[out] EXCEPINFO *pExcepInfo,[out] UINT *pArgErr,[in] UINT cVarRef,[in, size_is (cVarRef)] UINT *rgVarRefIdx,[in, out, size_is (cVarRef)] VARIANTARG *rgVarRef);
- cpp_quote("")
- const DISPID DISPID_UNKNOWN = -1;
- const DISPID DISPID_VALUE = 0;
- const DISPID DISPID_PROPERTYPUT = -3;
- const DISPID DISPID_NEWENUM = -4;
- const DISPID DISPID_EVALUATE = -5;
- const DISPID DISPID_CONSTRUCTOR = -6;
- const DISPID DISPID_DESTRUCTOR = -7;
- const DISPID DISPID_COLLECT = -8;
- cpp_quote("")
- }
- cpp_quote("")
- [object, uuid (00020404-0000-0000-C000-000000000046), pointer_default (unique)]
- interface IEnumVARIANT : IUnknown {
- typedef [unique] IEnumVARIANT *LPENUMVARIANT;
- cpp_quote("")
- [local] HRESULT Next ([in] ULONG celt,[out, size_is (celt), length_is (*pCeltFetched)] VARIANT *rgVar,[out] ULONG *pCeltFetched);
- [call_as (Next)] HRESULT RemoteNext ([in] ULONG celt,[out, size_is (celt), length_is (*pCeltFetched)] VARIANT *rgVar,[out] ULONG *pCeltFetched);
- HRESULT Skip ([in] ULONG celt);
- HRESULT Reset ();
- HRESULT Clone ([out] IEnumVARIANT **ppEnum);
- }
- cpp_quote("")
- [object, uuid (00020403-0000-0000-C000-000000000046), pointer_default (unique)]
- interface ITypeComp : IUnknown {
- typedef [unique] ITypeComp *LPTYPECOMP;
- cpp_quote("")
- typedef [v1_enum] enum tagDESCKIND {
- DESCKIND_NONE = 0,
- DESCKIND_FUNCDESC,
- DESCKIND_VARDESC,
- DESCKIND_TYPECOMP,
- DESCKIND_IMPLICITAPPOBJ,
- DESCKIND_MAX
- } DESCKIND;
- cpp_quote("")
- typedef union tagBINDPTR {
- FUNCDESC *lpfuncdesc;
- VARDESC *lpvardesc;
- ITypeComp *lptcomp;
- } BINDPTR,*LPBINDPTR;
- cpp_quote("")
- [local] HRESULT Bind ([in] LPOLESTR szName,[in] ULONG lHashVal,[in] WORD wFlags,[out] ITypeInfo **ppTInfo,[out] DESCKIND *pDescKind,[out] BINDPTR *pBindPtr);
- [call_as (Bind)] HRESULT RemoteBind ([in] LPOLESTR szName,[in] ULONG lHashVal,[in] WORD wFlags,[out] ITypeInfo **ppTInfo,[out] DESCKIND *pDescKind,[out] LPFUNCDESC *ppFuncDesc,[out] LPVARDESC *ppVarDesc,[out] ITypeComp **ppTypeComp,[out] CLEANLOCALSTORAGE *pDummy);
- [local] HRESULT BindType ([in] LPOLESTR szName,[in] ULONG lHashVal,[out] ITypeInfo **ppTInfo,[out] ITypeComp **ppTComp);
- [call_as (BindType)] HRESULT RemoteBindType ([in] LPOLESTR szName,[in] ULONG lHashVal,[out] ITypeInfo **ppTInfo);
- }
- cpp_quote("#endif")
- cpp_quote("")
- cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
- [object, uuid (00020401-0000-0000-C000-000000000046), pointer_default (unique)]
- interface ITypeInfo : IUnknown {
- typedef [unique] ITypeInfo *LPTYPEINFO;
- cpp_quote("")
- [local] HRESULT GetTypeAttr ([out] TYPEATTR **ppTypeAttr);
- [call_as (GetTypeAttr)] HRESULT RemoteGetTypeAttr ([out] LPTYPEATTR *ppTypeAttr,[out] CLEANLOCALSTORAGE *pDummy);
- HRESULT GetTypeComp ([out] ITypeComp **ppTComp);
- [local] HRESULT GetFuncDesc ([in] UINT index,[out] FUNCDESC **ppFuncDesc);
- [call_as (GetFuncDesc)] HRESULT RemoteGetFuncDesc ([in] UINT index,[out] LPFUNCDESC *ppFuncDesc,[out] CLEANLOCALSTORAGE *pDummy);
- [local] HRESULT GetVarDesc ([in] UINT index,[out] VARDESC **ppVarDesc);
- [call_as (GetVarDesc)] HRESULT RemoteGetVarDesc ([in] UINT index,[out] LPVARDESC *ppVarDesc,[out] CLEANLOCALSTORAGE *pDummy);
- [local] HRESULT GetNames ([in] MEMBERID memid,[out, size_is (cMaxNames), length_is (*pcNames)] BSTR *rgBstrNames,[in] UINT cMaxNames,[out] UINT *pcNames);
- [call_as (GetNames)] HRESULT RemoteGetNames ([in] MEMBERID memid,[out, size_is (cMaxNames), length_is (*pcNames)] BSTR *rgBstrNames,[in] UINT cMaxNames,[out] UINT *pcNames);
- HRESULT GetRefTypeOfImplType ([in] UINT index,[out] HREFTYPE *pRefType);
- HRESULT GetImplTypeFlags ([in] UINT index,[out] INT *pImplTypeFlags);
- [local] HRESULT GetIDsOfNames ([in, size_is (cNames)] LPOLESTR *rgszNames,[in] UINT cNames,[out, size_is (cNames)] MEMBERID *pMemId);
- [call_as (GetIDsOfNames)] HRESULT LocalGetIDsOfNames (void);
- [local] HRESULT Invoke ([in] PVOID pvInstance,[in] MEMBERID memid,[in] WORD wFlags,[in, out] DISPPARAMS *pDispParams,[out] VARIANT *pVarResult,[out] EXCEPINFO *pExcepInfo,[out] UINT *puArgErr);
- [call_as (Invoke)] HRESULT LocalInvoke (void);
- [local] HRESULT GetDocumentation ([in] MEMBERID memid,[out] BSTR *pBstrName,[out] BSTR *pBstrDocString,[out] DWORD *pdwHelpContext,[out] BSTR *pBstrHelpFile);
- [call_as (GetDocumentation)] HRESULT RemoteGetDocumentation ([in] MEMBERID memid,[in] DWORD refPtrFlags,[out] BSTR *pBstrName,[out] BSTR *pBstrDocString,[out] DWORD *pdwHelpContext,[out] BSTR *pBstrHelpFile);
- [local]
- HRESULT GetDllEntry ([in] MEMBERID memid,[in] INVOKEKIND invKind,[out] BSTR *pBstrDllName,[out] BSTR *pBstrName,[out] WORD *pwOrdinal);
- [call_as (GetDllEntry)]
- HRESULT RemoteGetDllEntry ([in] MEMBERID memid,[in] INVOKEKIND invKind,[in] DWORD refPtrFlags,[out] BSTR *pBstrDllName,[out] BSTR *pBstrName,[out] WORD *pwOrdinal);
- HRESULT GetRefTypeInfo ([in] HREFTYPE hRefType,[out] ITypeInfo **ppTInfo);
- [local] HRESULT AddressOfMember ([in] MEMBERID memid,[in] INVOKEKIND invKind,[out] PVOID *ppv);
- [call_as (AddressOfMember)] HRESULT LocalAddressOfMember (void);
- [local] HRESULT CreateInstance ([in] IUnknown *pUnkOuter,[in] REFIID riid,[out, iid_is (riid)] PVOID *ppvObj);
- [call_as (CreateInstance)] HRESULT RemoteCreateInstance ([in] REFIID riid,[out, iid_is (riid)] IUnknown **ppvObj);
- HRESULT GetMops ([in] MEMBERID memid,[out] BSTR *pBstrMops);
- [local] HRESULT GetContainingTypeLib ([out] ITypeLib **ppTLib,[out] UINT *pIndex);
- [call_as (GetContainingTypeLib)] HRESULT RemoteGetContainingTypeLib ([out] ITypeLib **ppTLib,[out] UINT *pIndex);
- [local] void ReleaseTypeAttr ([in] TYPEATTR *pTypeAttr);
- [call_as (ReleaseTypeAttr)] HRESULT LocalReleaseTypeAttr (void);
- [local] void ReleaseFuncDesc ([in] FUNCDESC *pFuncDesc);
- [call_as (ReleaseFuncDesc)] HRESULT LocalReleaseFuncDesc (void);
- [local] void ReleaseVarDesc ([in] VARDESC *pVarDesc);
- [call_as (ReleaseVarDesc)] HRESULT LocalReleaseVarDesc (void);
- }
- cpp_quote("")
- [object, uuid (00020412-0000-0000-C000-000000000046), pointer_default (unique)]
- interface ITypeInfo2 : ITypeInfo {
- typedef [unique] ITypeInfo2 *LPTYPEINFO2;
- cpp_quote("")
- HRESULT GetTypeKind ([out] TYPEKIND *pTypeKind);
- HRESULT GetTypeFlags ([out] ULONG *pTypeFlags);
- HRESULT GetFuncIndexOfMemId ([in] MEMBERID memid,[in] INVOKEKIND invKind,[out] UINT *pFuncIndex);
- HRESULT GetVarIndexOfMemId ([in] MEMBERID memid,[out] UINT *pVarIndex);
- HRESULT GetCustData ([in] REFGUID guid,[out] VARIANT *pVarVal);
- HRESULT GetFuncCustData ([in] UINT index,[in] REFGUID guid,[out] VARIANT *pVarVal);
- HRESULT GetParamCustData ([in] UINT indexFunc,[in] UINT indexParam,[in] REFGUID guid,[out] VARIANT *pVarVal);
- HRESULT GetVarCustData ([in] UINT index,[in] REFGUID guid,[out] VARIANT *pVarVal);
- HRESULT GetImplTypeCustData ([in] UINT index,[in] REFGUID guid,[out] VARIANT *pVarVal);
- [local] HRESULT GetDocumentation2 ([in] MEMBERID memid,[in] LCID lcid,[out] BSTR *pbstrHelpString,[out] DWORD *pdwHelpStringContext,[out] BSTR *pbstrHelpStringDll);
- [call_as (GetDocumentation2)] HRESULT RemoteGetDocumentation2 ([in] MEMBERID memid,[in] LCID lcid,[in] DWORD refPtrFlags,[out] BSTR *pbstrHelpString,[out] DWORD *pdwHelpStringContext,[out] BSTR *pbstrHelpStringDll);
- HRESULT GetAllCustData ([out] CUSTDATA *pCustData);
- HRESULT GetAllFuncCustData ([in] UINT index,[out] CUSTDATA *pCustData);
- HRESULT GetAllParamCustData ([in] UINT indexFunc,[in] UINT indexParam,[out] CUSTDATA *pCustData);
- HRESULT GetAllVarCustData ([in] UINT index,[out] CUSTDATA *pCustData);
- HRESULT GetAllImplTypeCustData ([in] UINT index,[out] CUSTDATA *pCustData);
- }
- cpp_quote("#endif")
- cpp_quote("")
- cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)")
- [object, uuid (00020402-0000-0000-C000-000000000046), pointer_default (unique)]
- interface ITypeLib : IUnknown {
- typedef [v1_enum] enum tagSYSKIND {
- SYS_WIN16 = 0,
- SYS_WIN32,
- SYS_MAC,
- SYS_WIN64
- } SYSKIND;
- cpp_quote("")
- typedef [v1_enum] enum tagLIBFLAGS {
- LIBFLAG_FRESTRICTED = 0x01,
- LIBFLAG_FCONTROL = 0x02,
- LIBFLAG_FHIDDEN = 0x04,
- LIBFLAG_FHASDISKIMAGE = 0x08
- } LIBFLAGS;
- cpp_quote("")
- typedef [unique] ITypeLib *LPTYPELIB;
- cpp_quote("")
- typedef struct tagTLIBATTR {
- GUID guid;
- LCID lcid;
- SYSKIND syskind;
- WORD wMajorVerNum;
- WORD wMinorVerNum;
- WORD wLibFlags;
- } TLIBATTR,*LPTLIBATTR;
- cpp_quote("")
- [local] UINT GetTypeInfoCount (void);
- [call_as (GetTypeInfoCount)] HRESULT RemoteGetTypeInfoCount ([out] UINT *pcTInfo);
- HRESULT GetTypeInfo ([in] UINT index,[out] ITypeInfo **ppTInfo);
- HRESULT GetTypeInfoType ([in] UINT index,[out] TYPEKIND *pTKind);
- HRESULT GetTypeInfoOfGuid ([in] REFGUID guid,[out] ITypeInfo **ppTinfo);
- [local] HRESULT GetLibAttr ([out] TLIBATTR **ppTLibAttr);
- [call_as (GetLibAttr)] HRESULT RemoteGetLibAttr ([out] LPTLIBATTR *ppTLibAttr,[out] CLEANLOCALSTORAGE *pDummy);
- HRESULT GetTypeComp ([out] ITypeComp **ppTComp);
- [local] HRESULT GetDocumentation ([in] INT index,[out] BSTR *pBstrName,[out] BSTR *pBstrDocString,[out] DWORD *pdwHelpContext,[out] BSTR *pBstrHelpFile);
- [call_as (GetDocumentation)] HRESULT RemoteGetDocumentation ([in] INT index,[in] DWORD refPtrFlags,[out] BSTR *pBstrName,[out] BSTR *pBstrDocString,[out] DWORD *pdwHelpContext,[out] BSTR *pBstrHelpFile);
- [local] HRESULT IsName ([in, out] LPOLESTR szNameBuf,[in] ULONG lHashVal,[out] BOOL *pfName);
- [call_as (IsName)] HRESULT RemoteIsName ([in] LPOLESTR szNameBuf,[in] ULONG lHashVal,[out] BOOL *pfName,[out] BSTR *pBstrLibName);
- [local] HRESULT FindName ([in, out] LPOLESTR szNameBuf,[in] ULONG lHashVal,[out, size_is (*pcFound), length_is (*pcFound)] ITypeInfo **ppTInfo,[out, size_is (*pcFound), length_is (*pcFound)] MEMBERID *rgMemId,[in, out] USHORT *pcFound);
- [call_as (FindName)] HRESULT RemoteFindName ([in] LPOLESTR szNameBuf,[in] ULONG lHashVal,[out, size_is (*pcFound), length_is (*pcFound)] ITypeInfo **ppTInfo,[out, size_is (*pcFound), length_is (*pcFound)] MEMBERID *rgMemId,[in, out] USHORT *pcFound,[out] BSTR *pBstrLibName);
- [local] void ReleaseTLibAttr ([in] TLIBATTR *pTLibAttr);
- [call_as (ReleaseTLibAttr)] HRESULT LocalReleaseTLibAttr (void);
- }
- cpp_quote("#endif")
- cpp_quote("")
- cpp_quote("#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)")
- [object, uuid (00020411-0000-0000-C000-000000000046), pointer_default (unique)]
- interface ITypeLib2 : ITypeLib {
- typedef [unique] ITypeLib2 *LPTYPELIB2;
- cpp_quote("")
- HRESULT GetCustData ([in] REFGUID guid,[out] VARIANT *pVarVal);
- [local] HRESULT GetLibStatistics ([out] ULONG *pcUniqueNames,[out] ULONG *pcchUniqueNames);
- [call_as (GetLibStatistics)] HRESULT RemoteGetLibStatistics ([out] ULONG *pcUniqueNames,[out] ULONG *pcchUniqueNames);
- [local] HRESULT GetDocumentation2 ([in] INT index,[in] LCID lcid,[out] BSTR *pbstrHelpString,[out] DWORD *pdwHelpStringContext,[out] BSTR *pbstrHelpStringDll);
- [call_as (GetDocumentation2)] HRESULT RemoteGetDocumentation2 ([in] INT index,[in] LCID lcid,[in] DWORD refPtrFlags,[out] BSTR *pbstrHelpString,[out] DWORD *pdwHelpStringContext,[out] BSTR *pbstrHelpStringDll);
- HRESULT GetAllCustData ([out] CUSTDATA *pCustData);
- }
- cpp_quote("")
- [object, uuid (00020410-0000-0000-C000-000000000046), pointer_default (unique), local]
- interface ITypeChangeEvents: IUnknown {
- typedef [unique] ITypeChangeEvents *LPTYPECHANGEEVENTS;
- cpp_quote("")
- typedef enum tagCHANGEKIND {
- CHANGEKIND_ADDMEMBER,
- CHANGEKIND_DELETEMEMBER,
- CHANGEKIND_SETNAMES,
- CHANGEKIND_SETDOCUMENTATION,
- CHANGEKIND_GENERAL,
- CHANGEKIND_INVALIDATE,
- CHANGEKIND_CHANGEFAILED,
- CHANGEKIND_MAX
- } CHANGEKIND;
- cpp_quote("")
- HRESULT RequestTypeChange ([in] CHANGEKIND changeKind,[in] ITypeInfo *pTInfoBefore,[in] LPOLESTR pStrName,[out] INT *pfCancel);
- HRESULT AfterTypeChange ([in] CHANGEKIND changeKind,[in] ITypeInfo *pTInfoAfter,[in] LPOLESTR pStrName);
- }
- cpp_quote("")
- [object, uuid (1cf2b120-547d-101b-8e65-08002b2bd119), pointer_default (unique)]
- interface IErrorInfo: IUnknown {
- typedef [unique] IErrorInfo *LPERRORINFO;
- cpp_quote("")
- HRESULT GetGUID ([out] GUID *pGUID);
- HRESULT GetSource ([out] BSTR *pBstrSource);
- HRESULT GetDescription ([out] BSTR *pBstrDescription);
- HRESULT GetHelpFile ([out] BSTR *pBstrHelpFile);
- HRESULT GetHelpContext ([out] DWORD *pdwHelpContext);
- }
- cpp_quote("")
- [object, uuid (22f03340-547d-101b-8e65-08002b2bd119), pointer_default (unique)]
- interface ICreateErrorInfo: IUnknown {
- typedef [unique] ICreateErrorInfo *LPCREATEERRORINFO;
- cpp_quote("")
- HRESULT SetGUID ([in] REFGUID rguid);
- HRESULT SetSource ([in] LPOLESTR szSource);
- HRESULT SetDescription ([in] LPOLESTR szDescription);
- HRESULT SetHelpFile ([in] LPOLESTR szHelpFile);
- HRESULT SetHelpContext ([in] DWORD dwHelpContext);
- }
- cpp_quote("")
- [object, uuid (DF0B3D60-548f-101b-8e65-08002b2bd119), pointer_default (unique)]
- interface ISupportErrorInfo: IUnknown {
- typedef [unique] ISupportErrorInfo *LPSUPPORTERRORINFO;
- cpp_quote("")
- HRESULT InterfaceSupportsErrorInfo ([in] REFIID riid);
- }
- cpp_quote("")
- [object, uuid (0000002e-0000-0000-C000-000000000046)]
- interface ITypeFactory : IUnknown {
- HRESULT CreateFromTypeInfo ([in] ITypeInfo *pTypeInfo,[in] REFIID riid,[out, iid_is (riid)] IUnknown **ppv);
- }
- cpp_quote("")
- [local, object, uuid (0000002d-0000-0000-C000-000000000046)]
- interface ITypeMarshal : IUnknown {
- HRESULT Size ([in] PVOID pvType,[in] DWORD dwDestContext,[in] PVOID pvDestContext,[out] ULONG *pSize);
- HRESULT Marshal ([in] PVOID pvType,[in] DWORD dwDestContext,[in] PVOID pvDestContext,[in] ULONG cbBufferLength,[out] BYTE *pBuffer,[out] ULONG *pcbWritten);
- HRESULT Unmarshal ([out] PVOID pvType,[in] DWORD dwFlags,[in] ULONG cbBufferLength,[in] BYTE *pBuffer,[out] ULONG *pcbRead);
- HRESULT Free ([in] PVOID pvType);
- }
- cpp_quote("")
- [local, object, uuid (0000002f-0000-0000-C000-000000000046)]
- interface IRecordInfo: IUnknown {
- typedef [unique] IRecordInfo *LPRECORDINFO;
- cpp_quote("")
- HRESULT RecordInit ([out] PVOID pvNew);
- HRESULT RecordClear ([in] PVOID pvExisting);
- HRESULT RecordCopy ([in] PVOID pvExisting,[out] PVOID pvNew);
- HRESULT GetGuid ([out] GUID *pguid);
- HRESULT GetName ([out] BSTR *pbstrName);
- HRESULT GetSize ([out] ULONG *pcbSize);
- HRESULT GetTypeInfo ([out] ITypeInfo **ppTypeInfo);
- HRESULT GetField ([in] PVOID pvData,[in] LPCOLESTR szFieldName,[out] VARIANT *pvarField);
- HRESULT GetFieldNoCopy ([in] PVOID pvData,[in] LPCOLESTR szFieldName,[out] VARIANT *pvarField,[out] PVOID *ppvDataCArray);
- HRESULT PutField ([in] ULONG wFlags,[in, out] PVOID pvData,[in] LPCOLESTR szFieldName,[in] VARIANT *pvarField);
- HRESULT PutFieldNoCopy ([in] ULONG wFlags,[in, out] PVOID pvData,[in] LPCOLESTR szFieldName,[in] VARIANT *pvarField);
- HRESULT GetFieldNames ([in, out] ULONG *pcNames,[out, size_is (*pcNames), length_is (*pcNames)] BSTR *rgBstrNames);
- BOOL IsMatchingType ([in] IRecordInfo *pRecordInfo);
- PVOID RecordCreate ();
- HRESULT RecordCreateCopy ([in] PVOID pvSource,[out] PVOID *ppvDest);
- HRESULT RecordDestroy ([in] PVOID pvRecord);
- }
- cpp_quote("")
- [object, uuid (3127ca40-446e-11ce-8135-00aa004bb851), pointer_default (unique)]
- interface IErrorLog : IUnknown {
- typedef IErrorLog *LPERRORLOG;
- cpp_quote("")
- HRESULT AddError ([in] LPCOLESTR pszPropName,[in] EXCEPINFO *pExcepInfo);
- }
- cpp_quote("")
- [object, uuid (55272a00-42cb-11ce-8135-00aa004bb851), pointer_default (unique)]
- interface IPropertyBag : IUnknown {
- typedef IPropertyBag *LPPROPERTYBAG;
- cpp_quote("")
- [local] HRESULT Read ([in] LPCOLESTR pszPropName,[in, out] VARIANT *pVar,[in, unique] IErrorLog *pErrorLog);
- [call_as (Read)] HRESULT RemoteRead ([in] LPCOLESTR pszPropName,[out] VARIANT *pVar,[in, unique] IErrorLog *pErrorLog,[in] DWORD varType,[in] IUnknown *pUnkObj);
- HRESULT Write ([in] LPCOLESTR pszPropName,[in] VARIANT *pVar);
- }
- cpp_quote("#endif")
|