#ifndef _INC_OBJIDL #define _INC_OBJIDL TypeDef SNB = **OLECHAR ' IMarshal ' IMarshal2 Interface IMalloc Inherits IUnknown Function Alloc(cb As SIZE_T) As VoidPtr Function Realloc(pv As VoidPtr, cb As SIZE_T) As VoidPtr Sub Free(pv As VoidPtr) Function GetSize(pv As VoidPtr) As SIZE_T Function DidAlloc(pv As VoidPtr) As Long Sub HeapMinimize() End Interface ' IMallocSpy ' IStdMarshalInfo ' IExternalCennection Type MULTI_QI pIID As * /*Const*/ IID pItf As *IUnknown hr As HRESULT End Type Dim IID_IMultiQI = [&h00000020, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID Interface IMultiQI Inherits IUnknown Function QueryMultipleInterfaces( /* [in] */ cMQIs As DWord, /* [out][in] */ pMQIs As *MULTI_QI) As HRESULT End Interface ' AsyncIMultiQI ' IInternalUnknown ' IEnumUnknown Type BIND_OPTS cbStruct As DWord grfFlags As DWord grfMode As DWord dwTickCountDeadline As DWord End Type Type BIND_OPTS2 ' Inherits BIND_OPTS cbStruct As DWord grfFlags As DWord grfMode As DWord dwTickCountDeadline As DWord dwTrackFlags As DWord dwClassContext As DWord locale As LCID pServerInfo As *COSERVERINFO End Type Interface IBindCtx Inherits IUnknown End Interface ' IEnumMoniker Interface IRunningObjectTable Inherits IUnknown End Interface Dim IID_IPersist = [&h0000010c, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID Interface IPersist Inherits IUnknown Function GetClassID( /* [out] */ ByRef ClassID As CLSID) As HRESULT End Interface Dim IID_IPersistStream = [&h00000109, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID Interface IPersistStream Inherits IPersist Function IsDirty() As HRESULT Function Load( /* [unique][in] */ pStm As *IStream) As HRESULT Function Save( /* [unique][in] */ pStm As *IStream, /* [in] */ fClearDirty As BOOL) As HRESULT Function GetSizeMax( /* [out] */ ByRef cbSize As ULARGE_INTEGER) As HRESULT End Interface Interface IMoniker Inherits IPersistStream End Interface ' IEnumString Dim IID_ISequentialStream = [&h0c733a30, &h2a1c, &h11ce, [&had, &he5, &h00, &haa, &h00, &h44, &h77, &h3d]] As IID Interface ISequentialStream Inherits IUnknown Function Read(pv As VoidPtr, cb As DWord, pcbRead As *DWord) As HRESULT Function Write(pv As VoidPtr, cb As DWord, pcbWritten As *DWord) As HRESULT End Interface Type STATSTG pwcsName As LPOLESTR type_ As DWord cbSize As ULARGE_INTEGER mtime As FILETIME ctime As FILETIME atime As FILETIME grfMode As DWord grfLocksSupported As DWord clsid As CLSID grfStateBits As DWord reserved As DWord End Type Enum STGTY STGTY_STORAGE = 1 STGTY_STREAM = 2 STGTY_LOCKBYTES = 3 STGTY_PROPERTY = 4 End Enum Enum STREAM_SEEK STREAM_SEEK_SET = 0 STREAM_SEEK_CUR = 1 STREAM_SEEK_END = 2 End Enum Enum LOCKTYPE LOCK_WRITE = 1 LOCK_EXCLUSIVE = 2 LOCK_ONLYONCE = 4 End Enum Dim IID_IStream = [&h0000000c, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID Interface IStream Inherits ISequentialStream Function Seek(dlibMove As LARGE_INTEGER, dwOrigin As DWord, plibNewPosition As *ULARGE_INTEGER) As HRESULT Function SetSize(libNewSize As ULARGE_INTEGER) As HRESULT Function CopyTo(pstm As *IStream, cb As ULARGE_INTEGER, pcbRead As *ULARGE_INTEGER, pcbWritten As *ULARGE_INTEGER) As HRESULT Function Commit(grfCommitFlags As DWord) As HRESULT Function Revert() As HRESULT Function LockRegion(libOffset As ULARGE_INTEGER, cb As ULARGE_INTEGER, dwLockType As DWord) As HRESULT Function UnlockRegion(libOffset As ULARGE_INTEGER, cb As ULARGE_INTEGER, dwLockType As DWord) As HRESULT Function Stat(pstatstg As *STATSTG, grfStatFlag As DWord) As HRESULT Function Clone(ByRef ppstm As *IStream) As HRESULT End Interface TypeDef LPSTREAM = *IStream Interface IEnumSTATSTG Inherits IUnknown End Interface #ifndef __IStorage_INTERFACE_DEFINED__ #define __IStorage_INTERFACE_DEFINED__ /* interface IStorage */ /* [unique][uuid][object] */ TypeDef LPSTORAGE = /* [unique] */ *IStorage Type RemSNB ulCntStr As DWord ulCntChar As DWord rgString[ELM(1)] As OLECHAR End Type TypeDef wireSNB /* [unique] */ = *RemSNB TypeDef SNB = /* [wire_marshal] */ **OLECHAR Dim IID_IStorage = [&h0000000b, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID Interface IStorage Inherits IUnknown Function CreateStream( /* [string][in] */ pwcsName As *OLECHAR, /* [in] */ grfMode As DWord, /* [in] */ reserved1 As DWord, /* [in] */ reserved2 As DWord, /* [out] */ ByRef pstm As *IStream) As HRESULT /* [local] */ Function OpenStream( /* [string][in] */ pwcsName As *OLECHAR, /* [unique][in] */ reserved1 As VoidPtr, /* [in] */ grfMode As DWord, /* [in] */ reserved2 As DWord, /* [out] */ ByRef pstm As *IStream) As HRESULT Function CreateStorage( /* [string][in] */ pwcsName As *OLECHAR, /* [in] */ grfMode As DWord, /* [in] */ reserved1 As DWord, /* [in] */ reserved2 As DWord, /* [out] */ ByRef pstg As *IStorage) As HRESULT Function OpenStorage( /* [string][unique][in] */ pwcsName As *OLECHAR, /* [unique][in] */ pstgPriority As IStorage, /* [in] */ grfMode As DWord, /* [unique][in] */ snbExclude As SNB, /* [in] */ reserved As DWord, /* [out] */ ByRef pstg As *IStorage) As HRESULT /* [local] */ Function CopyTo( /* [in] */ ciidExclude As DWord, /* [size_is][unique][in] */ ByRef rgiidExclude As * /*Const*/ IID, /* [unique][in] */ snbExclude As SNB, /* [unique][in] */ pstgDest As *IStorage) As HRESULT Function MoveElementTo( /* [string][in] */ pwcsName As *OLECHAR, /* [unique][in] */ pstgDest As *IStorage, /* [string][in] */ pwcsNewName As *OLECHAR, /* [in] */ grfFlags As DWord) As HRESULT Function Commit( /* [in] */ grfCommitFlags As DWord) As HRESULT Function Revert() As HRESULT /* [local] */ Function EnumElements( /* [in] */ reserved1 As DWord, /* [size_is][unique][in] */ reserved2 As VoidPtr, /* [in] */ reserved3 As DWord, /* [out] */ ByRef penum As *IEnumSTATSTG) As HRESULT Function DestroyElement( /* [string][in] */ pwcsName As *OLECHAR) As HRESULT Function RenameElement( /* [string][in] */ pwcsOldName As *OLECHAR, /* [string][in] */ pwcsNewName As *OLECHAR) As HRESULT Function SetElementTimes( /* [string][unique][in] */ pwcsName As *OLECHAR, /* [unique][in] */ ByRef ctime As /*Const*/ FILETIME, /* [unique][in] */ ByRef atime As /*Const*/ FILETIME, /* [unique][in] */ ByRef mtime As /*Const*/ FILETIME) As HRESULT Function SetClass( /* [in] */ ByRef clsid As CLSID) As HRESULT Function SetStateBits( /* [in] */ grfStateBits As DWord, /* [in] */ grfMask As DWord) As HRESULT Function Stat( /* [out] */ ByRef statstg As STATSTG, /* [in] */ grfStatFlag As DWord) As HRESULT End Interface #endif /* __IStorage_INTERFACE_DEFINED__ */ Interface IPersistFile Inherits IPersist Function IsDirty() As HRESULT Function Load( /* [in] */ pszFileName As LPCOLESTR, /* [in] */ dwMode As DWord) As HRESULT Function Save( /* [unique][in] */ pszFileName As LPCOLESTR, /* [in] */ fRemember As BOOL) As HRESULT Function SaveCompleted( /* [unique][in] */ pszFileName As LPCOLESTR) As HRESULT Function GetCurFile( /* [out] */ ByRef pszFileName As LPOLESTR) As HRESULT End Interface ' IPersistStrage Interface ILockBytes Inherits IUnknown End Interface Type DVTARGETDEVICE tdSize As DWord tdDriverNameOffset As Word tdDeviceNameOffset As Word tdPortNameOffset As Word tdExtDevmodeOffset As Word tdData[ELM(1)] As Byte End Type TypeDef CLIPFORMAT = Word TypeDef LPCLIPFORMAT = *CLIPFORMAT Type FORMATETC cfFormat As CLIPFORMAT ptd As *DVTARGETDEVICE dwAspect As DWord lindex As Long tymed As DWord End Type TypeDef LPFORMATETC = *FORMATETC Interface IEnumFORMATETC Inherits IUnknown End Interface Interface IEnumSTATDATA Inherits IUnknown End Interface ' IRootStorage Enum /*[transmit_as(long)]*/ TYMED TYMED_HGLOBAL = 1 TYMED_FILE = 2 TYMED_ISTREAM = 4 TYMED_ISTORAGE = 8 TYMED_GDI = 16 TYMED_MFPICT = 32 TYMED_ENHMF = 64 TYMED_NULL = 0 End Enum Type STGMEDIUM tymed As DWord data As VoidPtr ' /* [switch_type(DWORD), switch_is((DWORD) tymed)] */ ' Union ' /*[case(TYMED_GDI)]*/ hBitmap As HBITMAP ' /*[case(TYMED_MFPICT)]*/ hMetaFilePict As HMETAFILEPICT ' /*[case(TYMED_ENHMF)]*/ hEnhMetaFile As HENHMETAFILE ' /*[case(TYMED_HGLOBAL)]*/ hGlobal As HGLOBAL ' /*[case(TYMED_FILE)]*/ lpszFileName As LPWSTR ' /*[case(TYMED_ISTREAM)]*/ pstm As *IStream ' /*[case(TYMED_ISTORAGE)]*/ pstg As *IStorage ' /*[default]*/ ' End Union /*[unique]*/ pUnkForRelease As *IUnknown End Type Interface IAdviseSink Inherits IUnknown End Interface ' AsyncIAdviseSink ' IAdviseSink2 ' AsyncIAdviseSink2 Interface IDataObject Inherits IUnknown Function /* [local] */ GetData( /* [unique][in] */ ByRef rformatetcIn As FORMATETC, /* [out] */ ByRef rmedium As STGMEDIUM) As HRESULT Function /* [local] */ GetDataHere( /* [unique][in] */ ByRef rformatetcIn As FORMATETC, /* [out] */ ByRef pmedium As STGMEDIUM) As HRESULT Function QueryGetData( /* [unique][in] */ ByRef pformatetc As FORMATETC) As HRESULT Function GetCanonicalFormatEtc( /* [unique][in] */ ByRef pformatetcIn As FORMATETC, /* [out] */ ByRef pmedium As STGMEDIUM) As HRESULT Function /* [local] */ SetData( /* [unique][in] */ pformatetcIn As *FORMATETC, /* [out] */ pmedium As *STGMEDIUM, /* [in] */ fRelease As BOOL) As HRESULT Function EnumFormatEtc( /* [in] */ ByVal dwDirection As DWord, /* [out] */ ByRef rpenumFormatEtc As *IEnumFORMATETC) As HRESULT Function DAdvise( /* [in] */ ByRef pformatetc As FORMATETC, /* [in] */ ByVal advf As DWord, /* [unique][in] */ ByVal pAdvSink As *IAdviseSink, /* [out] */ ByVal pdwConnection As *DWord) As HRESULT Function DUnadvise( /* [in] */ ByVal dwConnection As DWord) As HRESULT Function EnumDAdvise( /* [out] */ ByRef rpenumAdvise As *IEnumSTATDATA) As HRESULT End Interface Interface IDataAdviseHolder Inherits IUnknown End Interface Enum CALLTYPE CALLTYPE_TOPLEVEL = 1 CALLTYPE_NESTED = 2 CALLTYPE_ASYNC = 3 CALLTYPE_TOPLEVEL_CALLPENDING = 4 CALLTYPE_ASYNC_CALLPENDING = 5 End Enum Enum ERVERCALL SERVERCALL_ISHANDLED = 0 SERVERCALL_REJECTED = 1 SERVERCALL_RETRYLATER = 2 End Enum Enum PENDINGTYPE PENDINGTYPE_TOPLEVEL = 1 PENDINGTYPE_NESTED = 2 End Enum Enum PENDINGMSG PENDINGMSG_CANCELCALL = 0 PENDINGMSG_WAITNOPROCESS = 1 PENDINGMSG_WAITDEFPROCESS = 2 End Enum Type INTERFACEINFO pUnk As *IUnknown iid As IID wMethod As Word End Type TypeDef LPINTERFACEINFO = *INTERFACEINFO Dim IID_IMessageFilter = [&h00000016, &h0000, &h0000, [&hC0, &h00, &h00, &h00, &h00, &h00, &h00, &h46]] As IID Interface IMessageFilter Inherits IUnknown Function HandleInComingCall( /* [in] */ dwCallType As DWord, /* [in] */ htaskCaller As HTASK, /* [in] */ dwTickCount As DWord, /* [in] */ lpInterfaceInfo As LPINTERFACEINFO) As DWord Function RetryRejectedCall( /* [in] */ htaskCallee As HTASK, /* [in] */ dwTickCount As DWord, /* [in] */ dwRejectType As DWord) As DWord Function MessagePending( /* [in] */ htaskCallee As HTASK, /* [in] */ dwTickCount As DWord, /* [in] */ dwPendingType As DWord) As DWord End Interface ' IRpcChannelBuffer ' IRpcChannelBuffer2 ' IAsyncRpcChannelBuffer ' IRpcChannelBuffer3 ' IRpcSyntaxNegotiate ' IRpcProxyBuffer ' IRpcStubBuffer ' IPSFactoryBuffer ' IChannelHook ' IClientSecurity ' IServerSecurity ' IClassActivator ' IRpcOptions Interface IFillLockBytes Inherits IUnknown End Interface ' IProgressNotify ' ILayoutStorage ' IBlockingLock ' ITimeAndNoticeControl ' IOplockStorage ' ISurrogate ' IGlobalInterfaceTable ' IDirectWriterLock ' ISynchronize ' ISynchronizeHandle ' ISynchronizeEvent ' ISynchronizeContainer ' ISynchronizeMutex ' ICancelMethodCalls ' IAsyncManager ' ICallFactory ' IRpcHelper ' IReleaseMarshalBuffers ' IWaitMultiple ' IUrlMon ' IForegroundTransfer ' IAddrTrackingControl ' IAddrExclusionControl ' IPipeByte ' AsyncIPipeByte ' IPipeLong ' AsyncIPipeLong ' IPipeDouble ' AsyncIPipeDouble ' IThumbnailExtractor ' IDummyHICONIncluder ' IEnumContextProps ' IContext ' IObjContext ' IProcessLock ' ISurrogateService ' IComThreadingInfo ' IProcessInitControl ' IInitializeSpy #endif'_INC_OBJIDL