' OAIdl.sbp ' 本来はOAIdl.idlから生成するのが正当ですが、 ' これは手動で必要最低限のもののみ移植したものです。 #ifndef _INC_OAIDL_AB #define _INC_OAIDL_AB ' verify that the version is high enough to compile this file*/ '/* '#ifndef __REQUIRED_RPCNDR_H_VERSION__ '#define __REQUIRED_RPCNDR_H_VERSION__ 475 '#endif ' '#include "rpc.h" '#include "rpcndr.h" ' '#ifndef __RPCNDR_H_VERSION__ '#error this stub requires an updated version of '#endif // __RPCNDR_H_VERSION__ ' '#ifndef COM_NO_WINDOWS_H '#include "windows.h" '#include "ole2.h" '#endif /*COM_NO_WINDOWS_H*/ #include '/* header files for imported files */ '#include "objidl.h" #ifndef __IOleAutomationTypes_INTERFACE_DEFINED__ #define __IOleAutomationTypes_INTERFACE_DEFINED__ TypeDef VARTYPE = Word ' WTypes.ab TypeDef VARIANT_BOOL = Integer ' WTypes.ab Const VARIANT_TRUE = (-1 As VARIANT_BOOL) ' WTypes.ab Const VARIANT_FALSE = (0 As VARIANT_BOOL) ' WTypes.ab TypeDef SCODE = Long Class CY ' WTypes.ab Public int64 As Int64 Function Lo() As DWord Return GetDWord(VarPtr(int64)) End Function Sub Lo(lo As DWord) SetDWord(VarPtr(int64), lo) End Sub Function Hi() As Long Return GetDWord(VarPtr(int64) + SizeOf (DWord)) As Long End Function Sub Lo(lo As Long) SetDWord(VarPtr(int64) + SizeOf (DWord, lo As DWord)) End Sub End Class Class DECIMAL ' WTypes.ab Public wReserved As Word signscale As Word Hi32 As DWord Lo64 As QWord Function scale() As Byte Return GetByte(VarPtr(signscale)) End Function Sub scale(s As Byte) SetByte(VarPtr(signscale), s) End Sub Function sign() As Byte Return GetByte(VarPtr(signscale) + SizeOf (Byte)) End Function Sub sign(s As Byte) SetByte(VarPtr(signscale) + SizeOf (Byte), s) End Sub Function Lo32() As DWord Return GetDWord(VarPtr(Lo64) As *DWord) End Function Sub Lo32(l As DWord) SetDWord(VarPtr(Lo64) As *DWord, l) End Sub Function Mid32() As DWord Return GetDWord(VarPtr(Lo64) As *DWord) End Function Sub Mid32(m As DWord) SetDWord(VarPtr(Lo64) As *DWord + SizeOf (DWord), m) End Sub End Class TypeDef DATE = Double ' WTypes.ab Interface IRecordInfo Inherits IUnknown End Interface /* interface IOleAutomationTypes */ /* [auto_handle][unique][version] */ TypeDef CURRENCY = CY Type SAFEARRAYBOUND cElements As DWord lLbound As Long End Type Typedef LPSAFEARRAYBOUND = *SAFEARRAYBOUND Typedef wireVARIANT = VoidPtr '/* [unique] */ *_wireVARIANT Typedef wireBRECORD = VoidPtr '/* [unique] */ *_wireBRECORD ' Type SAFEARR_BSTR; ' Type SAFEARR_UNKNOWN; ' Type SAFEARR_DISPATCH; ' Type SAFEARR_VARIANT; ' Type SAFEARR_BRECORD; ' Type SAFEARR_HAVEIID; /* [v1_enum] */ /* Const Enum SF_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 Or VT_RESERVED End Enum */ ' Type SAFEARRAYUNION ' Type /* [unique] */ wireSAFEARRAY TypeDef wirePSAFEARRAY = VoidPtr '/* [unique] */ *wireSAFEARRAY Type SAFEARRAY cDims As Word fFeatures As Word cbElements As DWord cLocks As DWord pvData As VoidPtr rgsabound[ELM(1)] As SAFEARRAYBOUND End Type TypeDef LPSAFEARRAY = /* [wire_marshal] */ *SAFEARRAY Const FADF_AUTO = &h1 Const FADF_STATIC = &h2 Const FADF_EMBEDDED = &h4 Const FADF_FIXEDSIZE = &h10 Const FADF_RECORD = &h20 Const FADF_HAVEIID = &h40 Const FADF_HAVEVARTYPE = &h80 Const FADF_BSTR = &h100 Const FADF_UNKNOWN = &h200 Const FADF_DISPATCH = &h400 Const FADF_VARIANT = &h800 Const FADF_RESERVED = &hf008 Class VARIANT Public vt As VARTYPE wReserved1 As Word wReserved2 As Word wReserved3 As Word val As QWord Function llVal() As Int64 Return val As Int64 End Function Sub llVal(v As Int64) val = v As QWord End Sub Function lVal() As Long Return val As DWord As Long End Function Sub lVal(v As Long) val = v As DWord End Sub Function bVal() As Byte Return val As Byte End Function Sub bVal(v As Byte) val = v End Sub Function iVal() As Integer Return val As Word As Integer End Function Sub iVal(v As Integer) val = v As Word End Sub Function fltVal() As Single Return GetSingle(VarPtr(val) As *Single) End Function Sub fltVal(v As Single) SetSingle(VarPtr(val) As *Single, v) End Sub Function dblVal() As Double Return GetDouble(VarPtr(val) As *Double) End Function Sub dblVal(v As Double) SetDouble(VarPtr(val) As *Double, v) End Sub ' SizeOf (VARIANT_BOOL) = 2 Function boolVal() As VARIANT_BOOL Return val As Word As VARIANT_BOOL End Function Sub boolVal(v As VARIANT_BOOL) val = v As Word End Sub ' SizeOf (SCODE) = 4 Function scode() As SCODE Return val As DWord As SCODE End Function Sub scode(v As SCODE) val = v As DWord End Sub ' SizeOf (CY) = 8 Function cyVal() As CY SetQWord(VarPtr(cyVal), val) End Function Sub cyVal(v As CY) SetQWord(VarPtr(val), GetQWord(VarPtr(v))) End Sub ' SizeOf (DATE) = 8 Function date() As DATE SetQWord(VarPtr(date), val) End Function Sub date(v As DATE) SetQWord(VarPtr(val), GetQWord(VarPtr(v))) End Sub Function bstrVal() As BSTR Return val As ULONG_PTR As BSTR End Function Sub bstrVal(v As BSTR) val = v As ULONG_PTR End Sub Function punkVal() As *IUnknown Return val As ULONG_PTR As *IUnknown End Function Sub punkVal(v As *IUnknown) val = v As ULONG_PTR End Sub Function pdispVal() As *IDispatch Return val As ULONG_PTR As *IDispatch End Function Sub pdispVal(v As *IDispatch) val = v As ULONG_PTR End Sub Function parray() As *SAFEARRAY Return val As ULONG_PTR As *SAFEARRAY End Function Sub parray(v As *SAFEARRAY) val = v As ULONG_PTR End Sub Function pbVal() As *Byte Return val As ULONG_PTR As *Byte End Function Sub pbVal(v As *Byte) val = v As ULONG_PTR End Sub Function piVal() As *Integer Return val As ULONG_PTR As *Integer End Function Sub piVal(v As *Integer) val = v As ULONG_PTR End Sub Function plVal() As *Long Return val As ULONG_PTR As *Long End Function Sub plVal(v As *Long) val = v As ULONG_PTR End Sub Function pllVal() As *Int64 Return val As ULONG_PTR As *Int64 End Function Sub pllVal(v As *Int64) val = v As ULONG_PTR End Sub Function pfltVal() As *Single Return val As ULONG_PTR As *Single End Function Sub pfltVal(v As *Single) val = v As ULONG_PTR End Sub Function pdblVal() As *Double Return val As ULONG_PTR As *Double End Function Sub pdblVal(v As *Double) val = v As ULONG_PTR End Sub Function pboolVal() As *VARIANT_BOOL Return val As ULONG_PTR As *VARIANT_BOOL End Function Sub pboolVal(v As *VARIANT_BOOL) val = v As ULONG_PTR End Sub Function pscode() As *SCODE Return val As ULONG_PTR As *SCODE End Function Sub pscode(v As *SCODE) val = v As ULONG_PTR End Sub Function pcyVal() As *CY Return val As ULONG_PTR As *CY End Function Sub pcyVal(v As *CY) val = v As ULONG_PTR End Sub Function pdate() As *DATE Return val As ULONG_PTR As *DATE End Function Sub pdate(v As *DATE) val = v As ULONG_PTR End Sub Function pbstrVal() As *BSTR Return val As ULONG_PTR As *BSTR End Function Sub pbstrVal(v As *BSTR) val = v As ULONG_PTR End Sub Function ppunkVal() As **IUnknown Return val As ULONG_PTR As **IUnknown End Function Sub ppunkVal(v As **IUnknown) val = v As ULONG_PTR End Sub Function ppdispVal() As **IDispatch Return val As ULONG_PTR As **IDispatch End Function Sub ppdispVal(v As **IDispatch) val = v As ULONG_PTR End Sub Function pparray() As **SAFEARRAY Return val As ULONG_PTR As **SAFEARRAY End Function Sub pparray(v As **SAFEARRAY) val = v As ULONG_PTR End Sub Function pvarVal() As *VARIANT Return val As ULONG_PTR As *VARIANT End Function Sub pvarVal(v As *VARIANT) val = v As ULONG_PTR End Sub /* Function byref() As VoidPtr Return val As ULONG_PTR As VoidPtr End Function Sub byref(v As VoidPtr) val = v As ULONG_PTR End Sub */ Function cVal() As Char Return val As Byte As Char End Function Sub cVal(v As Char) val = v As Byte End Sub Function uiVal() As Word Return val As Word End Function Sub uiVal(v As Word) val = v End Sub Function ulVal() As DWord Return val As DWord End Function Sub ulVal(v As DWord) val = v End Sub Function ullVal() As QWord Return val End Function Sub ullVal(v As QWord) val = v End Sub Function intVal() As Long Return val As DWord As Long End Function Sub intVal(v As Long) val = v As DWord End Sub Function uintVal() As DWord Return val As DWord End Function Sub uintVal(v As DWord) val = v End Sub Function pdecVal() As *DECIMAL Return val As ULONG_PTR As *DECIMAL End Function Sub pdecVal(v As *DECIMAL) val = v As ULONG_PTR End Sub Function pcVal() As *Char Return val As ULONG_PTR As *Char End Function Sub pcVal(v As *Char) val = v As ULONG_PTR End Sub Function puiVal() As *Word Return val As ULONG_PTR As *Word End Function Sub puiVal(v As *Word) val = v As ULONG_PTR End Sub Function pulVal() As *DWord Return val As ULONG_PTR As *DWord End Function Sub pulVal(v As *DWord) val = v As ULONG_PTR End Sub Function pullVal() As *QWord Return val As ULONG_PTR As *QWord End Function Sub pullVal(v As *QWord) val = v As ULONG_PTR End Sub Function pintVal() As *Long Return val As ULONG_PTR As *Long End Function Sub pintVal(v As *Long) val = v As ULONG_PTR End Sub Function puintVal() As *DWord Return val As ULONG_PTR As *DWord End Function Sub puintVal(v As *DWord) val = v As ULONG_PTR End Sub Function pvRecord() As VoidPtr Return val As ULONG_PTR As VoidPtr End Function Sub pvRecord(v As VoidPtr) val = v As ULONG_PTR End Sub Function pRecInfo() As *IRecordInfo Return (val As ULONG_PTR + SizeOf (VoidPtr)) As *IRecordInfo End Function Sub pRecInfo(v As *IRecordInfo) Set_LONG_PTR((VarPtr(val) As ULONG_PTR + SizeOf (VoidPtr)) As VoidPtr, v As LONG_PTR) End Sub Function decVal() As DECIMAL Dim p As *DECIMAL p = VarPtr(This) As *DECIMAL Return p[0] End Function Sub decVal(v As DECIMAL) Dim p As *DECIMAL p = VarPtr(This) As *DECIMAL p[0] = v End Sub End Class TypeDef LPVARIANT = *VARIANT TypeDef VARIANTARG = VARIANT TypeDef LPVARIANTARG =* VARIANT ' Type _wireBRECORD ' Type _wireVARIANT TypeDef DISPID = Long TypeDef MEMBERID = DISPID TypeDef HREFTYPE = DWord /* [v1_enum] */ Const Enum TYPEKIND TKIND_ENUM ' = 0 TKIND_RECORD ' = TKIND_ENUM + 1 TKIND_MODULE ' = TKIND_RECORD + 1 TKIND_INTERFACE ' = TKIND_MODULE + 1 TKIND_DISPATCH ' = TKIND_INTERFACE + 1 TKIND_COCLASS ' = TKIND_DISPATCH + 1 TKIND_ALIAS ' = TKIND_COCLASS + 1 TKIND_UNION ' = TKIND_ALIAS + 1 TKIND_MAX ' = TKIND_UNION + 1 End Enum Class TYPEDESC Private p As VoidPtr ' /* [switch_is][switch_type] */ Union ' /* [case()] */ lptdesc As *TYPEDESC ' /* [case()] */ lpadesc As *ARRAYDESC ' /* [case()] */ hreftype As HREFTYPE ' /* [default] */ /* Empty union arm */ ' End Union Public vt As VARTYPE Function lptdesc() As *TYPEDESC Return p End Function Sub lptdesc(ptd As *TYPEDESC) p = ptd End Sub Function lpadesc() As *ARRAYDESC Return p End Function Sub lpadesc(pad As *ARRAYDESC) p = pad End Sub Function hreftype() As *HREFTYPE Return p End Function Sub hreftype(prd As *HREFTYPE) p = prd End Sub End Class Type ARRAYDESC tdescElem As TYPEDESC cDims As Word /* [size_is] */ rgbounds[ELM(1)] As SAFEARRAYBOUND End Type Type PARAMDESCEX cBytes As DWord varDefaultValue As VARIANTARG End Type Typedef LPPARAMDESCEX = *PARAMDESCEX Type PARAMDESC pparamdescex As LPPARAMDESCEX USHORT wParamFlags As Word End Type TypeDef LPPARAMDESC = *PARAMDESC Const PARAMFLAG_NONE = 0 Const PARAMFLAG_FIN = &h1 Const PARAMFLAG_FOUT = &h2 Const PARAMFLAG_FLCID = &h4 Const PARAMFLAG_FRETVAL = &h8 Const PARAMFLAG_FOPT = &h10 Const PARAMFLAG_FHASDEFAULT = &h20 Const PARAMFLAG_FHASCUSTDATA = &h40 Type IDLDESC dwReserved As ULONG_PTR wIDLFlags As Word End Type TypeDef LPIDLDESC = *IDLDESC Const IDLFLAG_NONE = PARAMFLAG_NONE Const IDLFLAG_FIN = PARAMFLAG_FIN Const IDLFLAG_FOUT = PARAMFLAG_FOUT Const IDLFLAG_FLCID = PARAMFLAG_FLCID Const IDLFLAG_FRETVAL = PARAMFLAG_FRETVAL Class ELEMDESC Public tdesc As TYPEDESC idldesc As IDLDESC Function paramdesc() As PARAMDESC Dim p As *PARAMDESC p = VarPtr(idldesc) As *PARAMDESC Return p[0] End Function Sub paramdesc(pd As PARAMDESC) Dim p As *PARAMDESC p = VarPtr(idldesc) As *PARAMDESC p[0] = pd End Sub End Class Type TYPEATTR guid As GUID lcid As LCID dwReserved As DWord memidConstructor As MEMBERID memidDestructor As MEMBERID lpstrSchema As LPOLESTR cbSizeInstance As DWord typekind As TYPEKIND cFuncs As Word cVars As Word cImplTypes As Word cbSizeVft As Word cbAlignment As Word wTypeFlags As Word wMajorVerNum As Word wMinorVerNum As Word tdescAlias As TYPEDESC idldescType As IDLDESC End Type TypeDef LPTYPEATTR = *TYPEATTR Type DISPPARAMS /* [size_is] */ rgvarg As *VARIANTARG /* [size_is] */ rgdispidNamedArgs As *DISPID cArgs As DWord cNamedArgs As DWord End Type Type EXCEPINFO wCode As Word wReserved As Word bstrSource As BSTR bstrDescription As BSTR bstrHelpFile As BSTR dwHelpContext As DWord pvReserved As VoidPtr pfnDeferredFillIn = *Function(p As *EXCEPINFO) As HRESULT scode As SCODE End Type TypeDef LPEXCEPINFO = *EXCEPINFO /* [v1_enum] */ Const Enum CALLCONV CC_FASTCALL = 0 CC_CDECL = 1 CC_MSCPASCAL = CC_CDECL + 1 CC_PASCAL = CC_MSCPASCAL CC_MACPASCAL = CC_PASCAL + 1 CC_STDCALL = CC_MACPASCAL + 1 CC_FPFASTCALL = CC_STDCALL + 1 CC_SYSCALL = CC_FPFASTCALL + 1 CC_MPWCDECL = CC_SYSCALL + 1 CC_MPWPASCAL = CC_MPWCDECL + 1 CC_MAX = CC_MPWPASCAL + 1 End Enum /* [v1_enum] */ Const Enum FUNCKIND FUNC_VIRTUAL = 0 FUNC_PUREVIRTUAL = FUNC_VIRTUAL + 1 FUNC_NONVIRTUAL = FUNC_PUREVIRTUAL + 1 FUNC_STATIC = FUNC_NONVIRTUAL + 1 FUNC_DISPATCH = FUNC_STATIC + 1 End Enum /* [v1_enum] */ Const Enum INVOKEKIND INVOKE_FUNC = 1 INVOKE_PROPERTYGET = 2 INVOKE_PROPERTYPUT = 4 INVOKE_PROPERTYPUTREF = 8 End Enum Type FUNCDESC memid As MEMBERID /* [size_is] */ lprgscode As *SCODE /* [size_is] */ lprgelemdescParam As *ELEMDESC funckind As FUNCKIND invkind As INVOKEKIND callconv As CALLCONV cParams As Integer cParamsOpt As Integer oVft As Integer cScodes As Integer elemdescFunc As ELEMDESC wFuncFlags As Word End Type TypeDef LPFUNCDESC = *FUNCDESC /* [v1_enum] */ Const Enum VARKIND VAR_PERINSTANCE = 0 VAR_STATIC = VAR_PERINSTANCE + 1 VAR_CONST = VAR_STATIC + 1 VAR_DISPATCH = VAR_CONST + 1 End Enum Const IMPLTYPEFLAG_FDEFAULT = &h1 Const IMPLTYPEFLAG_FSOURCE = &h2 Const IMPLTYPEFLAG_FRESTRICTED = &h4 Const IMPLTYPEFLAG_FDEFAULTVTABLE = &h8 Class VARDESC Public memid As MEMBERID lpstrSchema As LPOLESTR ' /* [switch_is][switch_type] */ Union ' /* [case()] */ oInst As DWord /* [case()] */ lpvarValue As *VARIANT ' End Union elemdescVar As ELEMDESC wVarFlags As Word varkind As VARKIND Function oInst() As DWord Return lpvarValue As ULONG_PTR As DWord End Function Sub oInst(o As DWord) lpvarValue = o As ULONG_PTR As *VARIANT End Sub End Class TypeDef LPVARDESC = VARDESC Const Enum TYPEFLAGS TYPEFLAG_FAPPOBJECT = &h1 TYPEFLAG_FCANCREATE = &h2 TYPEFLAG_FLICENSED = &h4 TYPEFLAG_FPREDECLID = &h8 TYPEFLAG_FHIDDEN = &h10 TYPEFLAG_FCONTROL = &h20 TYPEFLAG_FDUAL = &h40 TYPEFLAG_FNONEXTENSIBLE = &h80 TYPEFLAG_FOLEAUTOMATION = &h100 TYPEFLAG_FRESTRICTED = &h200 TYPEFLAG_FAGGREGATABLE = &h400 TYPEFLAG_FREPLACEABLE = &h800 TYPEFLAG_FDISPATCHABLE = &h1000 TYPEFLAG_FREVERSEBIND = &h2000 TYPEFLAG_FPROXY = &h4000 End Enum Enum FUNCFLAGS FUNCFLAG_FRESTRICTED = &h1 FUNCFLAG_FSOURCE = &h2 FUNCFLAG_FBINDABLE = &h4 FUNCFLAG_FREQUESTEDIT = &h8 FUNCFLAG_FDISPLAYBIND = &h10 FUNCFLAG_FDEFAULTBIND = &h20 FUNCFLAG_FHIDDEN = &h40 FUNCFLAG_FUSESGETLASTERROR = &h80 FUNCFLAG_FDEFAULTCOLLELEM = &h100 FUNCFLAG_FUIDEFAULT = &h200 FUNCFLAG_FNONBROWSABLE = &h400 FUNCFLAG_FREPLACEABLE = &h800 FUNCFLAG_FIMMEDIATEBIND = &h1000 End Enum Const Enum VARFLAGS VARFLAG_FREADONLY = &h1 VARFLAG_FSOURCE = &h2 VARFLAG_FBINDABLE = &h4 VARFLAG_FREQUESTEDIT = &h8 VARFLAG_FDISPLAYBIND = &h10 VARFLAG_FDEFAULTBIND = &h20 VARFLAG_FHIDDEN = &h40 VARFLAG_FRESTRICTED = &h80 VARFLAG_FDEFAULTCOLLELEM = &h100 VARFLAG_FUIDEFAULT = &h200 VARFLAG_FNONBROWSABLE = &h400 VARFLAG_FREPLACEABLE = &h800 VARFLAG_FIMMEDIATEBIND = &h1000 End Enum Type /* [wire_marshal] */ CLEANLOCALSTORAGE pInterface As *IUnknown pStorage As VoidPtr flags As DWord End Type Type CUSTDATAITEM guid As GUID varValue As VARIANTARG End Type TypeDef LPCUSTDATAITEM = *CUSTDATAITEM Type CUSTDATA cCustData As DWord /* [size_is] */ prgCustData As *CUSTDATAITEM End Type TypeDef LPCUSTDATA = *CUSTDATA #endif /* __IOleAutomationTypes_INTERFACE_DEFINED__ */ #ifdef __UNDEFINED__ #ifndef __ICreateTypeInfo_INTERFACE_DEFINED__ #define __ICreateTypeInfo_INTERFACE_DEFINED__ /* interface ICreateTypeInfo */ /* [local][unique][uuid][object] */ 'typedef /* [unique] */ ICreateTypeInfo *LPCREATETYPEINFO; EXTERN_C const IID IID_ICreateTypeInfo; MIDL_INTERFACE("00020405-0000-0000-C000-000000000046") ICreateTypeInfo : public IUnknown { public: Function SetGuid( /* [in] */ REFGUID guid) As HRESULT Function SetTypeFlags( /* [in] */ UINT uTypeFlags) As HRESULT Function SetDocString( /* [in] */ LPOLESTR pStrDoc) As HRESULT Function SetHelpContext( /* [in] */ DWORD dwHelpContext) As HRESULT Function SetVersion( /* [in] */ WORD wMajorVerNum, /* [in] */ WORD wMinorVerNum) As HRESULT Function AddRefTypeInfo( /* [in] */ ITypeInfo *pTInfo, /* [in] */ HREFTYPE *phRefType) As HRESULT Function AddFuncDesc( /* [in] */ UINT index, /* [in] */ FUNCDESC *pFuncDesc) As HRESULT Function AddImplType( /* [in] */ UINT index, /* [in] */ HREFTYPE hRefType) As HRESULT Function SetImplTypeFlags( /* [in] */ UINT index, /* [in] */ INT implTypeFlags) As HRESULT Function SetAlignment( /* [in] */ WORD cbAlignment) As HRESULT Function SetSchema( /* [in] */ LPOLESTR pStrSchema) As HRESULT Function AddVarDesc( /* [in] */ UINT index, /* [in] */ VARDESC *pVarDesc) As HRESULT Function SetFuncAndParamNames( /* [in] */ UINT index, /* [in][size_is][in] */ LPOLESTR *rgszNames, /* [in] */ UINT cNames) As HRESULT Function SetVarName( /* [in] */ UINT index, /* [in] */ LPOLESTR szName) As HRESULT Function SetTypeDescAlias( /* [in] */ TYPEDESC *pTDescAlias) As HRESULT Function DefineFuncAsDllEntry( /* [in] */ UINT index, /* [in] */ LPOLESTR szDllName, /* [in] */ LPOLESTR szProcName) As HRESULT Function SetFuncDocString( /* [in] */ UINT index, /* [in] */ LPOLESTR szDocString) As HRESULT Function SetVarDocString( /* [in] */ UINT index, /* [in] */ LPOLESTR szDocString) As HRESULT Function SetFuncHelpContext( /* [in] */ UINT index, /* [in] */ DWORD dwHelpContext) As HRESULT Function SetVarHelpContext( /* [in] */ UINT index, /* [in] */ DWORD dwHelpContext) As HRESULT Function SetMops( /* [in] */ UINT index, /* [in] */ BSTR bstrMops) As HRESULT Function SetTypeIdldesc( /* [in] */ IDLDESC *pIdlDesc) As HRESULT Function LayOut( void) As HRESULT }; #endif /* __ICreateTypeInfo_INTERFACE_DEFINED__ */ #ifndef __ICreateTypeInfo2_INTERFACE_DEFINED__ #define __ICreateTypeInfo2_INTERFACE_DEFINED__ /* interface ICreateTypeInfo2 */ /* [local][unique][uuid][object] */ 'typedef /* [unique] */ ICreateTypeInfo2 *LPCREATETYPEINFO2; EXTERN_C const IID IID_ICreateTypeInfo2; MIDL_INTERFACE("0002040E-0000-0000-C000-000000000046") ICreateTypeInfo2 : public ICreateTypeInfo { public: Function DeleteFuncDesc( /* [in] */ UINT index) As HRESULT Function DeleteFuncDescByMemId( /* [in] */ MEMBERID memid, /* [in] */ INVOKEKIND invKind) As HRESULT Function DeleteVarDesc( /* [in] */ UINT index) As HRESULT Function DeleteVarDescByMemId( /* [in] */ MEMBERID memid) As HRESULT Function DeleteImplType( /* [in] */ UINT index) As HRESULT Function SetCustData( /* [in] */ REFGUID guid, /* [in] */ VARIANT *pVarVal) As HRESULT Function SetFuncCustData( /* [in] */ UINT index, /* [in] */ REFGUID guid, /* [in] */ VARIANT *pVarVal) As HRESULT Function SetParamCustData( /* [in] */ UINT indexFunc, /* [in] */ UINT indexParam, /* [in] */ REFGUID guid, /* [in] */ VARIANT *pVarVal) As HRESULT Function SetVarCustData( /* [in] */ UINT index, /* [in] */ REFGUID guid, /* [in] */ VARIANT *pVarVal) As HRESULT Function SetImplTypeCustData( /* [in] */ UINT index, /* [in] */ REFGUID guid, /* [in] */ VARIANT *pVarVal) As HRESULT Function SetHelpStringContext( /* [in] */ ULONG dwHelpStringContext) As HRESULT Function SetFuncHelpStringContext( /* [in] */ UINT index, /* [in] */ ULONG dwHelpStringContext) As HRESULT Function SetVarHelpStringContext( /* [in] */ UINT index, /* [in] */ ULONG dwHelpStringContext) As HRESULT Function Invalidate( void) As HRESULT Function SetName( /* [in] */ LPOLESTR szName) As HRESULT }; #endif /* __ICreateTypeInfo2_INTERFACE_DEFINED__ */ #ifndef __ICreateTypeLib_INTERFACE_DEFINED__ #define __ICreateTypeLib_INTERFACE_DEFINED__ /* interface ICreateTypeLib */ /* [local][unique][uuid][object] */ 'typedef /* [unique] */ ICreateTypeLib *LPCREATETYPELIB; EXTERN_C const IID IID_ICreateTypeLib; MIDL_INTERFACE("00020406-0000-0000-C000-000000000046") ICreateTypeLib : public IUnknown { public: Function CreateTypeInfo( /* [in] */ LPOLESTR szName, /* [in] */ TYPEKIND tkind, /* [out] */ ICreateTypeInfo **ppCTInfo) As HRESULT Function SetName( /* [in] */ LPOLESTR szName) As HRESULT Function SetVersion( /* [in] */ WORD wMajorVerNum, /* [in] */ WORD wMinorVerNum) As HRESULT Function SetGuid( /* [in] */ REFGUID guid) As HRESULT Function SetDocString( /* [in] */ LPOLESTR szDoc) As HRESULT Function SetHelpFileName( /* [in] */ LPOLESTR szHelpFileName) As HRESULT Function SetHelpContext( /* [in] */ DWORD dwHelpContext) As HRESULT Function SetLcid( /* [in] */ LCID lcid) As HRESULT Function SetLibFlags( /* [in] */ UINT uLibFlags) As HRESULT Function SaveAllChanges( void) As HRESULT }; #endif /* __ICreateTypeLib_INTERFACE_DEFINED__ */ #ifndef __ICreateTypeLib2_INTERFACE_DEFINED__ #define __ICreateTypeLib2_INTERFACE_DEFINED__ /* interface ICreateTypeLib2 */ /* [local][unique][uuid][object] */ typedef /* [unique] */ ICreateTypeLib2 *LPCREATETYPELIB2; EXTERN_C const IID IID_ICreateTypeLib2; MIDL_INTERFACE("0002040F-0000-0000-C000-000000000046") ICreateTypeLib2 : public ICreateTypeLib { public: Function DeleteTypeInfo( /* [in] */ LPOLESTR szName) As HRESULT Function SetCustData( /* [in] */ REFGUID guid, /* [in] */ VARIANT *pVarVal) As HRESULT Function SetHelpStringContext( /* [in] */ ULONG dwHelpStringContext) As HRESULT Function SetHelpStringDll( /* [in] */ LPOLESTR szFileName) As HRESULT }; #endif /* __ICreateTypeLib2_INTERFACE_DEFINED__ */ #endif '__UNDECLARED__ #ifndef __IDispatch_INTERFACE_DEFINED__ #define __IDispatch_INTERFACE_DEFINED__ /* interface IDispatch */ /* [unique][uuid][object] */ Typedef LPDISPATCH = /* [unique] */ *IDispatch Const DISPID_UNKNOWN = -1 Const DISPID_VALUE = 0 Const DISPID_PROPERTYPUT = -3 Const DISPID_NEWENUM = -4 Const DISPID_EVALUATE = -5 Const DISPID_CONSTRUCTOR = -6 Const DISPID_DESTRUCTOR = -7 Const DISPID_COLLECT = -8 /* The range -500 through -999 is reserved for Controls */ /* The range 0x80010000 through 0x8001FFFF is reserved for Controls */ /* The range -5000 through -5499 is reserved for ActiveX Accessability */ /* The range -2000 through -2499 is reserved for VB5 */ /* The range -3900 through -3999 is reserved for Forms */ /* The range -5500 through -5550 is reserved for Forms */ /* The remainder of the negative DISPIDs are reserved for future use */ Dim IID_IDispatch = [&h00020400, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID Interface IDispatch Inherits IUnknown Function GetTypeInfoCount( /* [out] */ ByRef pctinfo As DWord) As HRESULT Function GetTypeInfo( /* [in] */ iTInfo As DWord, /* [in] */ lcid As LCID, /* [out] */ ByRef pTInfo As VoidPtr /* *ITypeInfo */) As HRESULT Function GetIDsOfNames( /* [in] */ ByRef riid As IID, /* [size_is][in] */ ByRef rgszNames As LPOLESTR, /* [in] */ cNames As DWord, /* [in] */ lcid As LCID, /* [size_is][out] */ ByRef rgDispId As DISPID) As HRESULT Function /* [local] */ Invoke( /* [in] */ dispIdMember As DISPID, /* [in] */ ByRef riid As IID, /* [in] */ lcid As LCID, /* [in] */ wFlags As Word, /* [out][in] */ ByRef pDispParams As DISPPARAMS, /* [out] */ ByRef pVarResult As VARIANT, /* [out] */ ByRef pExcepInfo As EXCEPINFO, /* [out] */ ByRef puArgErr As DWord) As HRESULT End Interface #endif /* __IDispatch_INTERFACE_DEFINED__ */ #ifndef __IEnumVARIANT_INTERFACE_DEFINED__ #define __IEnumVARIANT_INTERFACE_DEFINED__ /* interface IEnumVARIANT */ /* [unique][uuid][object] */ Typedef /* [unique] */ LPENUMVARIANT = *IEnumVARIANT Dim IID_IEnumVARIANT = [&h00020404, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID Interface IEnumVARIANT Inherits IUnknown /* [local] */ Function Next( /* [in] */ celt As DWord, /* [length_is][size_is][out] */ rgVar As *VARIANT, /* [out] */ pCeltFetched As *DWord) As HRESULT Function Skip( /* [in] */ celt As DWord) As HRESULT Function Reset() As HRESULT Function Clone( /* [out] */ ByRef pEnum As *IEnumVARIANT) As HRESULT End Interface #endif /* __IEnumVARIANT_INTERFACE_DEFINED__ */ #ifdef __UNDECLARED__ #ifndef __ITypeComp_INTERFACE_DEFINED__ #define __ITypeComp_INTERFACE_DEFINED__ /* interface ITypeComp */ /* [unique][uuid][object] */ typedef /* [unique] */ ITypeComp *LPTYPECOMP; typedef /* [v1_enum] */ enum tagDESCKIND { DESCKIND_NONE = 0, DESCKIND_FUNCDESC = DESCKIND_NONE + 1, DESCKIND_VARDESC = DESCKIND_FUNCDESC + 1, DESCKIND_TYPECOMP = DESCKIND_VARDESC + 1, DESCKIND_IMPLICITAPPOBJ = DESCKIND_TYPECOMP + 1, DESCKIND_MAX = DESCKIND_IMPLICITAPPOBJ + 1 } DESCKIND; typedef union tagBINDPTR { FUNCDESC *lpfuncdesc; VARDESC *lpvardesc; ITypeComp *lptcomp; } BINDPTR; typedef union tagBINDPTR *LPBINDPTR; EXTERN_C const IID IID_ITypeComp; MIDL_INTERFACE("00020403-0000-0000-C000-000000000046") ITypeComp : public IUnknown { public: virtual /* [local] */ HRESULT STDMETHODCALLTYPE Bind( /* [in] */ LPOLESTR szName, /* [in] */ ULONG lHashVal, /* [in] */ WORD wFlags, /* [out] */ ITypeInfo **ppTInfo, /* [out] */ DESCKIND *pDescKind, /* [out] */ BINDPTR *pBindPtr) As HRESULT virtual /* [local] */ HRESULT STDMETHODCALLTYPE BindType( /* [in] */ LPOLESTR szName, /* [in] */ ULONG lHashVal, /* [out] */ ITypeInfo **ppTInfo, /* [out] */ ITypeComp **ppTComp) As HRESULT }; #endif /* __ITypeComp_INTERFACE_DEFINED__ */ #ifndef __ITypeInfo_INTERFACE_DEFINED__ #define __ITypeInfo_INTERFACE_DEFINED__ /* interface ITypeInfo */ /* [unique][uuid][object] */ typedef /* [unique] */ ITypeInfo *LPTYPEINFO; EXTERN_C const IID IID_ITypeInfo; MIDL_INTERFACE("00020401-0000-0000-C000-000000000046") ITypeInfo : public IUnknown { public: virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetTypeAttr( /* [out] */ TYPEATTR **ppTypeAttr) As HRESULT Function GetTypeComp( /* [out] */ ITypeComp **ppTComp) As HRESULT virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetFuncDesc( /* [in] */ UINT index, /* [out] */ FUNCDESC **ppFuncDesc) As HRESULT virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetVarDesc( /* [in] */ UINT index, /* [out] */ VARDESC **ppVarDesc) As HRESULT virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetNames( /* [in] */ MEMBERID memid, /* [length_is][size_is][out] */ BSTR *rgBstrNames, /* [in] */ UINT cMaxNames, /* [out] */ UINT *pcNames) As HRESULT Function GetRefTypeOfImplType( /* [in] */ UINT index, /* [out] */ HREFTYPE *pRefType) As HRESULT Function GetImplTypeFlags( /* [in] */ UINT index, /* [out] */ INT *pImplTypeFlags) As HRESULT virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetIDsOfNames( /* [size_is][in] */ LPOLESTR *rgszNames, /* [in] */ UINT cNames, /* [size_is][out] */ MEMBERID *pMemId) As HRESULT virtual /* [local] */ HRESULT STDMETHODCALLTYPE Invoke( /* [in] */ PVOID pvInstance, /* [in] */ MEMBERID memid, /* [in] */ WORD wFlags, /* [out][in] */ DISPPARAMS *pDispParams, /* [out] */ VARIANT *pVarResult, /* [out] */ EXCEPINFO *pExcepInfo, /* [out] */ UINT *puArgErr) As HRESULT virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetDocumentation( /* [in] */ MEMBERID memid, /* [out] */ BSTR *pBstrName, /* [out] */ BSTR *pBstrDocString, /* [out] */ DWORD *pdwHelpContext, /* [out] */ BSTR *pBstrHelpFile) As HRESULT virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetDllEntry( /* [in] */ MEMBERID memid, /* [in] */ INVOKEKIND invKind, /* [out] */ BSTR *pBstrDllName, /* [out] */ BSTR *pBstrName, /* [out] */ WORD *pwOrdinal) As HRESULT Function GetRefTypeInfo( /* [in] */ HREFTYPE hRefType, /* [out] */ ITypeInfo **ppTInfo) As HRESULT virtual /* [local] */ HRESULT STDMETHODCALLTYPE AddressOfMember( /* [in] */ MEMBERID memid, /* [in] */ INVOKEKIND invKind, /* [out] */ PVOID *ppv) As HRESULT virtual /* [local] */ HRESULT STDMETHODCALLTYPE CreateInstance( /* [in] */ IUnknown *pUnkOuter, /* [in] */ REFIID riid, /* [iid_is][out] */ PVOID *ppvObj) As HRESULT Function GetMops( /* [in] */ MEMBERID memid, /* [out] */ BSTR *pBstrMops) As HRESULT virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetContainingTypeLib( /* [out] */ ITypeLib **ppTLib, /* [out] */ UINT *pIndex) As HRESULT virtual /* [local] */ void STDMETHODCALLTYPE ReleaseTypeAttr( /* [in] */ TYPEATTR *pTypeAttr) As HRESULT virtual /* [local] */ void STDMETHODCALLTYPE ReleaseFuncDesc( /* [in] */ FUNCDESC *pFuncDesc) As HRESULT virtual /* [local] */ void STDMETHODCALLTYPE ReleaseVarDesc( /* [in] */ VARDESC *pVarDesc) As HRESULT }; #endif /* __ITypeInfo_INTERFACE_DEFINED__ */ #ifndef __ITypeInfo2_INTERFACE_DEFINED__ #define __ITypeInfo2_INTERFACE_DEFINED__ /* interface ITypeInfo2 */ /* [unique][uuid][object] */ typedef /* [unique] */ ITypeInfo2 *LPTYPEINFO2; EXTERN_C const IID IID_ITypeInfo2; MIDL_INTERFACE("00020412-0000-0000-C000-000000000046") ITypeInfo2 : public ITypeInfo { public: Function GetTypeKind( /* [out] */ TYPEKIND *pTypeKind) As HRESULT Function GetTypeFlags( /* [out] */ ULONG *pTypeFlags) As HRESULT Function GetFuncIndexOfMemId( /* [in] */ MEMBERID memid, /* [in] */ INVOKEKIND invKind, /* [out] */ UINT *pFuncIndex) As HRESULT Function GetVarIndexOfMemId( /* [in] */ MEMBERID memid, /* [out] */ UINT *pVarIndex) As HRESULT Function GetCustData( /* [in] */ REFGUID guid, /* [out] */ VARIANT *pVarVal) As HRESULT Function GetFuncCustData( /* [in] */ UINT index, /* [in] */ REFGUID guid, /* [out] */ VARIANT *pVarVal) As HRESULT Function GetParamCustData( /* [in] */ UINT indexFunc, /* [in] */ UINT indexParam, /* [in] */ REFGUID guid, /* [out] */ VARIANT *pVarVal) As HRESULT Function GetVarCustData( /* [in] */ UINT index, /* [in] */ REFGUID guid, /* [out] */ VARIANT *pVarVal) As HRESULT Function GetImplTypeCustData( /* [in] */ UINT index, /* [in] */ REFGUID guid, /* [out] */ VARIANT *pVarVal) As HRESULT virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetDocumentation2( /* [in] */ MEMBERID memid, /* [in] */ LCID lcid, /* [out] */ BSTR *pbstrHelpString, /* [out] */ DWORD *pdwHelpStringContext, /* [out] */ BSTR *pbstrHelpStringDll) As HRESULT Function GetAllCustData( /* [out] */ CUSTDATA *pCustData) As HRESULT Function GetAllFuncCustData( /* [in] */ UINT index, /* [out] */ CUSTDATA *pCustData) As HRESULT Function GetAllParamCustData( /* [in] */ UINT indexFunc, /* [in] */ UINT indexParam, /* [out] */ CUSTDATA *pCustData) As HRESULT Function GetAllVarCustData( /* [in] */ UINT index, /* [out] */ CUSTDATA *pCustData) As HRESULT Function GetAllImplTypeCustData( /* [in] */ UINT index, /* [out] */ CUSTDATA *pCustData) As HRESULT }; #endif /* __ITypeInfo2_INTERFACE_DEFINED__ */ #ifndef __ITypeLib_INTERFACE_DEFINED__ #define __ITypeLib_INTERFACE_DEFINED__ /* interface ITypeLib */ /* [unique][uuid][object] */ typedef /* [v1_enum] */ enum tagSYSKIND { SYS_WIN16 = 0, SYS_WIN32 = SYS_WIN16 + 1, SYS_MAC = SYS_WIN32 + 1, SYS_WIN64 = SYS_MAC + 1 } SYSKIND; typedef /* [v1_enum] */ enum tagLIBFLAGS { LIBFLAG_FRESTRICTED = 0x1, LIBFLAG_FCONTROL = 0x2, LIBFLAG_FHIDDEN = 0x4, LIBFLAG_FHASDISKIMAGE = 0x8 } LIBFLAGS; typedef /* [unique] */ ITypeLib *LPTYPELIB; typedef struct tagTLIBATTR { GUID guid; LCID lcid; SYSKIND syskind; WORD wMajorVerNum; WORD wMinorVerNum; WORD wLibFlags; } TLIBATTR; typedef struct tagTLIBATTR *LPTLIBATTR; EXTERN_C const IID IID_ITypeLib; MIDL_INTERFACE("00020402-0000-0000-C000-000000000046") ITypeLib : public IUnknown { public: virtual /* [local] */ UINT STDMETHODCALLTYPE GetTypeInfoCount( void) As HRESULT Function GetTypeInfo( /* [in] */ UINT index, /* [out] */ ITypeInfo **ppTInfo) As HRESULT Function GetTypeInfoType( /* [in] */ UINT index, /* [out] */ TYPEKIND *pTKind) As HRESULT Function GetTypeInfoOfGuid( /* [in] */ REFGUID guid, /* [out] */ ITypeInfo **ppTinfo) As HRESULT virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetLibAttr( /* [out] */ TLIBATTR **ppTLibAttr) As HRESULT Function GetTypeComp( /* [out] */ ITypeComp **ppTComp) As HRESULT virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetDocumentation( /* [in] */ INT index, /* [out] */ BSTR *pBstrName, /* [out] */ BSTR *pBstrDocString, /* [out] */ DWORD *pdwHelpContext, /* [out] */ BSTR *pBstrHelpFile) As HRESULT virtual /* [local] */ HRESULT STDMETHODCALLTYPE IsName( /* [out][in] */ LPOLESTR szNameBuf, /* [in] */ ULONG lHashVal, /* [out] */ BOOL *pfName) As HRESULT virtual /* [local] */ HRESULT STDMETHODCALLTYPE FindName( /* [out][in] */ LPOLESTR szNameBuf, /* [in] */ ULONG lHashVal, /* [length_is][size_is][out] */ ITypeInfo **ppTInfo, /* [length_is][size_is][out] */ MEMBERID *rgMemId, /* [out][in] */ USHORT *pcFound) As HRESULT virtual /* [local] */ void STDMETHODCALLTYPE ReleaseTLibAttr( /* [in] */ TLIBATTR *pTLibAttr) As HRESULT }; #endif /* __ITypeLib_INTERFACE_DEFINED__ */ #ifndef __ITypeLib2_INTERFACE_DEFINED__ #define __ITypeLib2_INTERFACE_DEFINED__ /* interface ITypeLib2 */ /* [unique][uuid][object] */ typedef /* [unique] */ ITypeLib2 *LPTYPELIB2; EXTERN_C const IID IID_ITypeLib2; MIDL_INTERFACE("00020411-0000-0000-C000-000000000046") ITypeLib2 : public ITypeLib { public: Function GetCustData( /* [in] */ REFGUID guid, /* [out] */ VARIANT *pVarVal) As HRESULT virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetLibStatistics( /* [out] */ ULONG *pcUniqueNames, /* [out] */ ULONG *pcchUniqueNames) As HRESULT virtual /* [local] */ HRESULT STDMETHODCALLTYPE GetDocumentation2( /* [in] */ INT index, /* [in] */ LCID lcid, /* [out] */ BSTR *pbstrHelpString, /* [out] */ DWORD *pdwHelpStringContext, /* [out] */ BSTR *pbstrHelpStringDll) As HRESULT Function GetAllCustData( /* [out] */ CUSTDATA *pCustData) As HRESULT }; #endif /* __ITypeLib2_INTERFACE_DEFINED__ */ #ifndef __ITypeChangeEvents_INTERFACE_DEFINED__ #define __ITypeChangeEvents_INTERFACE_DEFINED__ /* interface ITypeChangeEvents */ /* [local][unique][uuid][object] */ typedef /* [unique] */ ITypeChangeEvents *LPTYPECHANGEEVENTS; typedef enum tagCHANGEKIND { CHANGEKIND_ADDMEMBER = 0, CHANGEKIND_DELETEMEMBER = CHANGEKIND_ADDMEMBER + 1, CHANGEKIND_SETNAMES = CHANGEKIND_DELETEMEMBER + 1, CHANGEKIND_SETDOCUMENTATION = CHANGEKIND_SETNAMES + 1, CHANGEKIND_GENERAL = CHANGEKIND_SETDOCUMENTATION + 1, CHANGEKIND_INVALIDATE = CHANGEKIND_GENERAL + 1, CHANGEKIND_CHANGEFAILED = CHANGEKIND_INVALIDATE + 1, CHANGEKIND_MAX = CHANGEKIND_CHANGEFAILED + 1 } CHANGEKIND; EXTERN_C const IID IID_ITypeChangeEvents; MIDL_INTERFACE("00020410-0000-0000-C000-000000000046") ITypeChangeEvents : public IUnknown { public: Function RequestTypeChange( /* [in] */ CHANGEKIND changeKind, /* [in] */ ITypeInfo *pTInfoBefore, /* [in] */ LPOLESTR pStrName, /* [out] */ INT *pfCancel) As HRESULT Function AfterTypeChange( /* [in] */ CHANGEKIND changeKind, /* [in] */ ITypeInfo *pTInfoAfter, /* [in] */ LPOLESTR pStrName) As HRESULT }; #endif /* __ITypeChangeEvents_INTERFACE_DEFINED__ */ #ifndef __IErrorInfo_INTERFACE_DEFINED__ #define __IErrorInfo_INTERFACE_DEFINED__ /* interface IErrorInfo */ /* [unique][uuid][object] */ typedef /* [unique] */ IErrorInfo *LPERRORINFO; EXTERN_C const IID IID_IErrorInfo; MIDL_INTERFACE("1CF2B120-547D-101B-8E65-08002B2BD119") IErrorInfo : public IUnknown { public: Function GetGUID( /* [out] */ GUID *pGUID) As HRESULT Function GetSource( /* [out] */ BSTR *pBstrSource) As HRESULT Function GetDescription( /* [out] */ BSTR *pBstrDescription) As HRESULT Function GetHelpFile( /* [out] */ BSTR *pBstrHelpFile) As HRESULT Function GetHelpContext( /* [out] */ DWORD *pdwHelpContext) As HRESULT }; #endif /* __IErrorInfo_INTERFACE_DEFINED__ */ #ifndef __ICreateErrorInfo_INTERFACE_DEFINED__ #define __ICreateErrorInfo_INTERFACE_DEFINED__ /* interface ICreateErrorInfo */ /* [unique][uuid][object] */ typedef /* [unique] */ ICreateErrorInfo *LPCREATEERRORINFO; EXTERN_C const IID IID_ICreateErrorInfo; MIDL_INTERFACE("22F03340-547D-101B-8E65-08002B2BD119") ICreateErrorInfo : public IUnknown { public: Function SetGUID( /* [in] */ REFGUID rguid) As HRESULT Function SetSource( /* [in] */ LPOLESTR szSource) As HRESULT Function SetDescription( /* [in] */ LPOLESTR szDescription) As HRESULT Function SetHelpFile( /* [in] */ LPOLESTR szHelpFile) As HRESULT Function SetHelpContext( /* [in] */ DWORD dwHelpContext) As HRESULT }; #endif /* __ICreateErrorInfo_INTERFACE_DEFINED__ */ #ifndef __ISupportErrorInfo_INTERFACE_DEFINED__ #define __ISupportErrorInfo_INTERFACE_DEFINED__ /* interface ISupportErrorInfo */ /* [unique][uuid][object] */ typedef /* [unique] */ ISupportErrorInfo *LPSUPPORTERRORINFO; EXTERN_C const IID IID_ISupportErrorInfo; MIDL_INTERFACE("DF0B3D60-548F-101B-8E65-08002B2BD119") ISupportErrorInfo : public IUnknown { public: Function InterfaceSupportsErrorInfo( /* [in] */ REFIID riid) As HRESULT }; #endif /* __ISupportErrorInfo_INTERFACE_DEFINED__ */ #ifndef __ITypeFactory_INTERFACE_DEFINED__ #define __ITypeFactory_INTERFACE_DEFINED__ /* interface ITypeFactory */ /* [uuid][object] */ EXTERN_C const IID IID_ITypeFactory; MIDL_INTERFACE("0000002E-0000-0000-C000-000000000046") ITypeFactory : public IUnknown { public: Function CreateFromTypeInfo( /* [in] */ ITypeInfo *pTypeInfo, /* [in] */ REFIID riid, /* [iid_is][out] */ IUnknown **ppv) As HRESULT }; #endif /* __ITypeFactory_INTERFACE_DEFINED__ */ #ifndef __ITypeMarshal_INTERFACE_DEFINED__ #define __ITypeMarshal_INTERFACE_DEFINED__ /* interface ITypeMarshal */ /* [uuid][object][local] */ EXTERN_C const IID IID_ITypeMarshal; MIDL_INTERFACE("0000002D-0000-0000-C000-000000000046") ITypeMarshal : public IUnknown { public: Function Size( /* [in] */ PVOID pvType, /* [in] */ DWORD dwDestContext, /* [in] */ PVOID pvDestContext, /* [out] */ ULONG *pSize) As HRESULT Function Marshal( /* [in] */ PVOID pvType, /* [in] */ DWORD dwDestContext, /* [in] */ PVOID pvDestContext, /* [in] */ ULONG cbBufferLength, /* [out] */ BYTE *pBuffer, /* [out] */ ULONG *pcbWritten) As HRESULT Function Unmarshal( /* [out] */ PVOID pvType, /* [in] */ DWORD dwFlags, /* [in] */ ULONG cbBufferLength, /* [in] */ BYTE *pBuffer, /* [out] */ ULONG *pcbRead) As HRESULT Function Free( /* [in] */ PVOID pvType) As HRESULT }; #endif /* __ITypeMarshal_INTERFACE_DEFINED__ */ #ifndef __IRecordInfo_INTERFACE_DEFINED__ #define __IRecordInfo_INTERFACE_DEFINED__ /* interface IRecordInfo */ /* [uuid][object][local] */ typedef /* [unique] */ IRecordInfo *LPRECORDINFO; EXTERN_C const IID IID_IRecordInfo; MIDL_INTERFACE("0000002F-0000-0000-C000-000000000046") IRecordInfo : public IUnknown { public: Function RecordInit( /* [out] */ PVOID pvNew) As HRESULT Function RecordClear( /* [in] */ PVOID pvExisting) As HRESULT Function RecordCopy( /* [in] */ PVOID pvExisting, /* [out] */ PVOID pvNew) As HRESULT Function GetGuid( /* [out] */ GUID *pguid) As HRESULT Function GetName( /* [out] */ BSTR *pbstrName) As HRESULT Function GetSize( /* [out] */ ULONG *pcbSize) As HRESULT Function GetTypeInfo( /* [out] */ ITypeInfo **ppTypeInfo) As HRESULT Function GetField( /* [in] */ PVOID pvData, /* [in] */ LPCOLESTR szFieldName, /* [out] */ VARIANT *pvarField) As HRESULT Function GetFieldNoCopy( /* [in] */ PVOID pvData, /* [in] */ LPCOLESTR szFieldName, /* [out] */ VARIANT *pvarField, /* [out] */ PVOID *ppvDataCArray) As HRESULT Function PutField( /* [in] */ ULONG wFlags, /* [out][in] */ PVOID pvData, /* [in] */ LPCOLESTR szFieldName, /* [in] */ VARIANT *pvarField) As HRESULT Function PutFieldNoCopy( /* [in] */ ULONG wFlags, /* [out][in] */ PVOID pvData, /* [in] */ LPCOLESTR szFieldName, /* [in] */ VARIANT *pvarField) As HRESULT Function GetFieldNames( /* [out][in] */ ULONG *pcNames, /* [length_is][size_is][out] */ BSTR *rgBstrNames) As HRESULT virtual BOOL STDMETHODCALLTYPE IsMatchingType( /* [in] */ IRecordInfo *pRecordInfo) As HRESULT virtual PVOID STDMETHODCALLTYPE RecordCreate( void) As HRESULT Function RecordCreateCopy( /* [in] */ PVOID pvSource, /* [out] */ PVOID *ppvDest) As HRESULT Function RecordDestroy( /* [in] */ PVOID pvRecord) As HRESULT }; #endif /* __IRecordInfo_INTERFACE_DEFINED__ */ #ifndef __IErrorLog_INTERFACE_DEFINED__ #define __IErrorLog_INTERFACE_DEFINED__ /* interface IErrorLog */ /* [unique][uuid][object] */ typedef IErrorLog *LPERRORLOG; EXTERN_C const IID IID_IErrorLog; MIDL_INTERFACE("3127CA40-446E-11CE-8135-00AA004BB851") IErrorLog : public IUnknown { public: Function AddError( /* [in] */ LPCOLESTR pszPropName, /* [in] */ EXCEPINFO *pExcepInfo) As HRESULT }; #endif /* __IErrorLog_INTERFACE_DEFINED__ */ #ifndef __IPropertyBag_INTERFACE_DEFINED__ #define __IPropertyBag_INTERFACE_DEFINED__ /* interface IPropertyBag */ /* [unique][uuid][object] */ typedef IPropertyBag *LPPROPERTYBAG; EXTERN_C const IID IID_IPropertyBag; MIDL_INTERFACE("55272A00-42CB-11CE-8135-00AA004BB851") IPropertyBag : public IUnknown { public: virtual /* [local] */ HRESULT STDMETHODCALLTYPE Read( /* [in] */ LPCOLESTR pszPropName, /* [out][in] */ VARIANT *pVar, /* [in] */ IErrorLog *pErrorLog) As HRESULT Function Write( /* [in] */ LPCOLESTR pszPropName, /* [in] */ VARIANT *pVar) As HRESULT }; #endif /* __IPropertyBag_INTERFACE_DEFINED__ */ #endif ' __UNDEFINED__ #endif '_INC_OAIDL_AB