Module: COM Synopsis: FFI declarations for some miscellaneous pieces of the COM interface that do not need special treatment. Copyright: Original Code is Copyright (c) 1995-2004 Functional Objects, Inc. All rights reserved. License: Functional Objects Library Public License Version 1.0 Dual-license: GNU Lesser General Public License Warranty: Distributed WITHOUT WARRANTY OF ANY KIND // This file is automatically generated from "objbase.h"; do not edit. define inline-only constant $CLSCTX-INPROC = logior($CLSCTX-INPROC-SERVER, $CLSCTX-INPROC-HANDLER); define inline-only constant $CLSCTX-ALL = logior($CLSCTX-INPROC-SERVER, $CLSCTX-INPROC-HANDLER, $CLSCTX-LOCAL-SERVER); define inline-only constant $CLSCTX-SERVER = logior($CLSCTX-INPROC-SERVER, $CLSCTX-LOCAL-SERVER); // enum REGCLS: define inline-only constant $REGCLS-SINGLEUSE = 0; define inline-only constant $REGCLS-MULTIPLEUSE = 1; define inline-only constant $REGCLS-MULTI-SEPARATE = 2; define inline-only constant $REGCLS-SUSPENDED = 4; define inline-only constant $REGCLS-SURROGATE = 8; define inline-only constant $STGM-DIRECT = #x00000000; define inline-only constant $STGM-TRANSACTED = #x00010000; define inline-only constant $STGM-SIMPLE = #x08000000; define inline-only constant $STGM-READ = #x00000000; define inline-only constant $STGM-WRITE = #x00000001; define inline-only constant $STGM-READWRITE = #x00000002; define inline-only constant $STGM-SHARE-DENY-NONE = #x00000040; define inline-only constant $STGM-SHARE-DENY-READ = #x00000030; define inline-only constant $STGM-SHARE-DENY-WRITE = #x00000020; define inline-only constant $STGM-SHARE-EXCLUSIVE = #x00000010; define inline-only constant $STGM-PRIORITY = #x00040000; define inline-only constant $STGM-DELETEONRELEASE = #x04000000; define inline-only constant $STGM-NOSCRATCH = #x00100000; define inline-only constant $STGM-CREATE = #x00001000; define inline-only constant $STGM-CONVERT = #x00020000; define inline-only constant $STGM-FAILIFTHERE = #x00000000; define inline-only constant $STGM-NOSNAPSHOT = #x00200000; // This file is automatically generated from "wtypes.h"; do not edit. define C-struct sealed inline-only slot Data1-value :: ; sealed inline-only slot Data2-value :: ; sealed inline-only slot Data3-value :: ; sealed inline-only array slot Data4-array :: , length: 8, address-getter: Data4-value; pack: 8; pointer-type-name: ; c-name: "struct _GUID"; end C-struct ; define inline constant = ; define inline constant = ; define inline constant = ; define inline constant = ; define inline constant = ; define inline constant = ; define constant = /* const */ ; define constant = /* const */ ; define constant = /* const */ ; define constant = /* const */ ; // enum MEMCTX: define inline-only constant $MEMCTX-TASK = 1; define inline-only constant $MEMCTX-SHARED = 2; define inline-only constant $MEMCTX-MACSYSTEM = 3; define inline-only constant $MEMCTX-UNKNOWN = -1; define inline-only constant $MEMCTX-SAME = -2; // enum CLSCTX: define inline-only constant $CLSCTX-INPROC-SERVER = #x1; define inline-only constant $CLSCTX-INPROC-HANDLER = #x2; define inline-only constant $CLSCTX-LOCAL-SERVER = #x4; define inline-only constant $CLSCTX-INPROC-SERVER16 = #x8; define inline-only constant $CLSCTX-REMOTE-SERVER = #x10; define inline-only constant $CLSCTX-INPROC-HANDLER16 = #x20; define inline-only constant $CLSCTX-INPROC-SERVERX86 = #x40; define inline-only constant $CLSCTX-INPROC-HANDLERX86 = #x80; define inline-only constant $CLSCTX-ESERVER-HANDLER = #x100; // enum MSHLFLAGS: define inline-only constant $MSHLFLAGS-NORMAL = 0; define inline-only constant $MSHLFLAGS-TABLESTRONG = 1; define inline-only constant $MSHLFLAGS-TABLEWEAK = 2; define inline-only constant $MSHLFLAGS-NOPING = 4; // enum MSHCTX: define inline-only constant $MSHCTX-LOCAL = 0; define inline-only constant $MSHCTX-NOSHAREDMEM = 1; define inline-only constant $MSHCTX-DIFFERENTMACHINE = 2; define inline-only constant $MSHCTX-INPROC = 3; // enum DVASPECT: define inline-only constant $DVASPECT-CONTENT = 1; define inline-only constant $DVASPECT-THUMBNAIL = 2; define inline-only constant $DVASPECT-ICON = 4; define inline-only constant $DVASPECT-DOCPRINT = 8; // enum STGC: define inline-only constant $STGC-DEFAULT = 0; define inline-only constant $STGC-OVERWRITE = 1; define inline-only constant $STGC-ONLYIFCURRENT = 2; define inline-only constant $STGC-DANGEROUSLYCOMMITMERELYTODISKCACHE = 4; define inline-only constant $STGC-CONSOLIDATE = 8; // enum STGMOVE: define inline-only constant $STGMOVE-MOVE = 0; define inline-only constant $STGMOVE-COPY = 1; define inline-only constant $STGMOVE-SHALLOWCOPY = 2; // enum STATFLAG: define inline-only constant $STATFLAG-DEFAULT = 0; define inline-only constant $STATFLAG-NONAME = 1; define inline-only constant $STATFLAG-NOOPEN = 2; define inline constant = ; define inline constant = ; define inline constant = ; define C-struct sealed inline-only slot dwPlatformId-value :: ; sealed inline-only slot dwVersionHi-value :: ; sealed inline-only slot dwVersionLo-value :: ; sealed inline-only slot dwProcessorArch-value :: ; pack: 8; pointer-type-name: ; c-name: "struct tagCSPLATFORM"; end C-struct ; define C-struct sealed inline-only slot dwContext-value :: ; sealed inline-only slot Platform-value :: ; sealed inline-only slot Locale-value :: ; sealed inline-only slot dwVersionHi-value :: ; sealed inline-only slot dwVersionLo-value :: ; pack: 8; pointer-type-name: ; c-name: "struct tagQUERYCONTEXT"; end C-struct ; define C-union sealed inline-only slot clsid-value :: ; sealed inline-only slot iid-value :: ; sealed inline-only slot typelibID-value :: ; sealed inline-only slot pFileExt-value :: ; sealed inline-only slot pMimeType-value :: ; sealed inline-only slot pProgId-value :: ; sealed inline-only slot pFileName-value :: ; sealed inline-only slot pJavaClassName-value :: ; sealed inline-only slot pPackageName-value :: ; pack: 8; c-name: "union __MIDL___MIDL_itf_wtypes_0001_0003"; end; define C-struct sealed inline-only slot tyspec-value :: ; sealed inline-only slot tagged-union-value :: ; pack: 8; pointer-type-name: ; c-name: "struct __MIDL___MIDL_itf_wtypes_0001_0001"; end C-struct ; define C-struct sealed inline-only slot pwszFileExtension-value :: ; sealed inline-only slot pwszDisplayName-value :: ; sealed inline-only slot pwszPackagePath-value :: ; pack: 8; pointer-type-name: ; c-name: "struct _PUBLISHEDAPPINFO"; end C-struct ; // enum CLASSPATHTYPE: define inline-only constant $ExeNamePath = 0; define inline-only constant $DllNamePath = $ExeNamePath + 1; define inline-only constant $TlbNamePath = $DllNamePath + 1; define inline-only constant $CabFilePath = $TlbNamePath + 1; define inline-only constant $InfFilePath = $CabFilePath + 1; define inline-only constant $DrwFilePath = $InfFilePath + 1; define inline-only constant $SetupNamePath = $DrwFilePath + 1; define C-struct sealed inline-only slot AppID-value :: ; sealed inline-only slot cClasses-value :: ; sealed inline-only slot prgClsIdList-value :: ; sealed inline-only slot cTypeLibIds-value :: ; sealed inline-only slot prgTypeLibIdList-value :: ; sealed inline-only slot cServers-value :: ; sealed inline-only slot prgServerNames-value :: ; pack: 8; pointer-type-name: ; c-name: "struct tagAPPDETAIL"; end C-struct ; define C-struct sealed inline-only slot PathType-value :: ; sealed inline-only slot pszPath-value :: ; sealed inline-only slot pszIconPath-value :: ; sealed inline-only slot pszSetupCommand-value :: ; sealed inline-only slot dwActFlags-value :: ; sealed inline-only slot pszVendor-value :: ; sealed inline-only slot pszPackageName-value :: ; sealed inline-only slot pszProductName-value :: ; sealed inline-only slot dwContext-value :: ; sealed inline-only slot Platform-value :: ; sealed inline-only slot Locale-value :: ; sealed inline-only slot dwVersionHi-value :: ; sealed inline-only slot dwVersionLo-value :: ; sealed inline-only slot Usn-value :: ; sealed inline-only slot cApps-value :: ; sealed inline-only slot pAppDetail-value :: ; pack: 8; pointer-type-name: ; c-name: "struct tagPACKAGEDETAIL"; end C-struct ; define C-struct sealed inline-only slot pszClassIconPath-value :: ; sealed inline-only slot pTreatAsClsid-value :: ; sealed inline-only slot cPackages-value :: ; sealed inline-only slot pPackageDetail-value :: ; pack: 8; pointer-type-name: ; c-name: "struct tagPACKAGEINFO"; end C-struct ; define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); // --- end of data from "wtypes.h" --- // This file is automatically generated from "unknwn.h"; do not edit. define constant = ; define constant = ; // --- end of data from "unknwn.h" --- // This file is automatically generated from "objidl.h"; do not edit. define constant = ; define constant = ; define constant = ; define constant = ; define constant = ; // enum EXTCONN: define inline-only constant $EXTCONN-STRONG = #x1; define inline-only constant $EXTCONN-WEAK = #x2; define inline-only constant $EXTCONN-CALLABLE = #x4; define constant = ; define C-struct sealed inline-only slot pIID-value :: /* const */ ; sealed inline-only slot pItf-value :: /* IUnknown */; sealed inline-only slot hr-value :: ; pack: 8; pointer-type-name: ; c-name: "struct tagMULTI_QI"; end C-struct ; define constant = ; define constant = ; define constant = ; define C-struct sealed inline-only slot cbStruct-value :: ; sealed inline-only slot grfFlags-value :: ; sealed inline-only slot grfMode-value :: ; sealed inline-only slot dwTickCountDeadline-value :: ; pack: 8; pointer-type-name: ; c-name: "struct tagBIND_OPTS"; end C-struct ; // enum BIND_FLAGS: define inline-only constant $BIND-MAYBOTHERUSER = 1; define inline-only constant $BIND-JUSTTESTEXISTENCE = 2; define constant = ; define constant = ; define constant = ; define constant = ; define constant = ; define constant = ; // enum MKSYS: define inline-only constant $MKSYS-NONE = 0; define inline-only constant $MKSYS-GENERICCOMPOSITE = 1; define inline-only constant $MKSYS-FILEMONIKER = 2; define inline-only constant $MKSYS-ANTIMONIKER = 3; define inline-only constant $MKSYS-ITEMMONIKER = 4; define inline-only constant $MKSYS-POINTERMONIKER = 5; define inline-only constant $MKSYS-CLASSMONIKER = 7; // enum MKRREDUCE: define inline-only constant $MKRREDUCE-ONE = ash(3,16); define inline-only constant $MKRREDUCE-TOUSER = ash(2,16); define inline-only constant $MKRREDUCE-THROUGHUSER = ash(1,16); define inline-only constant $MKRREDUCE-ALL = 0; define constant = ; define C-struct sealed inline-only slot pwcsName-value :: ; sealed inline-only slot type-value :: ; sealed inline-only slot cbSize-value :: ; sealed inline-only slot mtime-value :: ; sealed inline-only slot ctime-value :: ; sealed inline-only slot atime-value :: ; sealed inline-only slot grfMode-value :: ; sealed inline-only slot grfLocksSupported-value :: ; sealed inline-only slot clsid-value :: ; sealed inline-only slot grfStateBits-value :: ; sealed inline-only slot reserved-value :: ; pack: 8; pointer-type-name: ; c-name: "struct tagSTATSTG"; end C-struct ; // enum STGTY: define inline-only constant $STGTY-STORAGE = 1; define inline-only constant $STGTY-STREAM = 2; define inline-only constant $STGTY-LOCKBYTES = 3; define inline-only constant $STGTY-PROPERTY = 4; // enum STREAM_SEEK: define inline-only constant $STREAM-SEEK-SET = 0; define inline-only constant $STREAM-SEEK-CUR = 1; define inline-only constant $STREAM-SEEK-END = 2; // enum LOCKTYPE: define inline-only constant $LOCK-WRITE = 1; define inline-only constant $LOCK-EXCLUSIVE = 2; define inline-only constant $LOCK-ONLYONCE = 4; define constant = ; define constant = ; define constant = ; define constant = ; define constant = ; define constant = ; define C-struct sealed inline-only slot tdSize-value :: ; sealed inline-only slot tdDriverNameOffset-value :: ; sealed inline-only slot tdDeviceNameOffset-value :: ; sealed inline-only slot tdPortNameOffset-value :: ; sealed inline-only slot tdExtDevmodeOffset-value :: ; sealed inline-only array slot tdData-array :: , length: 1, address-getter: tdData-value; pack: 8; pointer-type-name: ; c-name: "struct tagDVTARGETDEVICE"; end C-struct ; define C-struct sealed inline-only slot cfFormat-value :: ; sealed inline-only slot ptd-value :: ; sealed inline-only slot dwAspect-value :: ; sealed inline-only slot lindex-value :: ; sealed inline-only slot tymed-value :: ; pack: 8; pointer-type-name: ; c-name: "struct tagFORMATETC"; end C-struct ; define constant = ; // enum ADVF: define inline-only constant $ADVF-NODATA = 1; define inline-only constant $ADVF-PRIMEFIRST = 2; define inline-only constant $ADVF-ONLYONCE = 4; define inline-only constant $ADVF-DATAONSTOP = 64; define inline-only constant $ADVFCACHE-NOHANDLER = 8; define inline-only constant $ADVFCACHE-FORCEBUILTIN = 16; define inline-only constant $ADVFCACHE-ONSAVE = 32; define C-struct sealed inline-only slot formatetc-value :: ; sealed inline-only slot advf-value :: ; sealed inline-only slot pAdvSink-value :: /* IAdviseSink */; sealed inline-only slot dwConnection-value :: ; pack: 8; pointer-type-name: ; c-name: "struct tagSTATDATA"; end C-struct ; define constant = ; define constant = ; // enum TYMED: define inline-only constant $TYMED-HGLOBAL = 1; define inline-only constant $TYMED-FILE = 2; define inline-only constant $TYMED-ISTREAM = 4; define inline-only constant $TYMED-ISTORAGE = 8; define inline-only constant $TYMED-GDI = 16; define inline-only constant $TYMED-MFPICT = 32; define inline-only constant $TYMED-ENHMF = 64; define inline-only constant $TYMED-NULL = 0; define C-union sealed inline-only slot hBitmap-value :: ; sealed inline-only slot hMetaFilePict-value :: ; sealed inline-only slot hEnhMetaFile-value :: ; sealed inline-only slot hGlobal-value :: ; sealed inline-only slot lpszFileName-value :: ; sealed inline-only slot pstm-value :: ; sealed inline-only slot pstg-value :: /* IStorage */; pack: 8; end; define C-struct sealed inline-only slot tymed-value :: ; sealed inline-only slot u-value :: ; sealed inline-only slot pUnkForRelease-value :: /* IUnknown */; pack: 8; pointer-type-name: ; c-name: "struct tagSTGMEDIUM"; end C-struct ; define inline constant = ; define C-pointer-type => ; define constant = ; define constant = ; // enum DATADIR: define inline-only constant $DATADIR-GET = 1; define inline-only constant $DATADIR-SET = 2; define constant = ; define constant = ; // enum CALLTYPE: define inline-only constant $CALLTYPE-TOPLEVEL = 1; define inline-only constant $CALLTYPE-NESTED = 2; define inline-only constant $CALLTYPE-ASYNC = 3; define inline-only constant $CALLTYPE-TOPLEVEL-CALLPENDING = 4; define inline-only constant $CALLTYPE-ASYNC-CALLPENDING = 5; // enum SERVERCALL: define inline-only constant $SERVERCALL-ISHANDLED = 0; define inline-only constant $SERVERCALL-REJECTED = 1; define inline-only constant $SERVERCALL-RETRYLATER = 2; // enum PENDINGTYPE: define inline-only constant $PENDINGTYPE-TOPLEVEL = 1; define inline-only constant $PENDINGTYPE-NESTED = 2; // enum PENDINGMSG: define inline-only constant $PENDINGMSG-CANCELCALL = 0; define inline-only constant $PENDINGMSG-WAITNOPROCESS = 1; define inline-only constant $PENDINGMSG-WAITDEFPROCESS = 2; define C-struct sealed inline-only slot pUnk-value :: /* IUnknown */; sealed inline-only slot iid-value :: ; sealed inline-only slot wMethod-value :: ; pack: 8; pointer-type-name: ; c-name: "struct tagINTERFACEINFO"; end C-struct ; define inline constant = ; define C-struct sealed inline-only slot reserved1-value :: ; sealed inline-only slot dataRepresentation-value :: ; sealed inline-only slot Buffer-value :: ; sealed inline-only slot cbBuffer-value :: ; sealed inline-only slot iMethod-value :: ; array slot reserved2-array :: , length: 5, address-getter: reserved2-value; sealed inline-only slot rpcFlags-value :: ; pack: 8; pointer-type-name: ; c-name: "struct tagRPCOLEMESSAGE"; end C-struct ; define constant = ; define C-union sealed inline-only slot propid-value :: ; sealed inline-only slot lpwstr-value :: ; pack: 8; end; define C-struct sealed inline-only slot ulKind-value :: ; sealed inline-only slot u-value :: ; pack: 8; pointer-type-name: ; c-name: "struct tagPROPSPEC"; end C-struct ; define C-struct sealed inline-only slot lpwstrName-value :: ; sealed inline-only slot propid-value :: ; sealed inline-only slot vt-value :: ; pack: 8; pointer-type-name: ; c-name: "struct tagSTATPROPSTG"; end C-struct ; define C-struct sealed inline-only slot fmtid-value :: ; sealed inline-only slot clsid-value :: ; sealed inline-only slot grfFlags-value :: ; sealed inline-only slot mtime-value :: ; sealed inline-only slot ctime-value :: ; sealed inline-only slot atime-value :: ; sealed inline-only slot dwOSVersion-value :: ; pack: 8; pointer-type-name: ; c-name: "struct tagSTATPROPSETSTG"; end C-struct ; define constant = ; define constant = ; define constant = ; define C-struct sealed inline-only slot LayoutType-value :: ; sealed inline-only slot pwcsElementName-value :: ; sealed inline-only slot cOffset-value :: ; sealed inline-only slot cBytes-value :: ; pack: 8; pointer-type-name: ; c-name: "struct tagStorageLayout"; end C-struct ; define constant = ; define constant = ; define constant = ; define C-struct sealed inline-only slot cPublApps-value :: ; sealed inline-only slot pPublAppInfo-value :: ; pack: 8; pointer-type-name: ; c-name: "struct tagPUBLISHEDINFOLIST"; end C-struct ; define C-struct sealed inline-only slot cPackInfo-value :: ; sealed inline-only slot pPackageInfo-value :: ; pack: 8; pointer-type-name: ; c-name: "struct tagPACKAGEINFOLIST"; end C-struct ; define C-struct sealed inline-only slot Clsid-value :: ; sealed inline-only slot pszDesc-value :: ; sealed inline-only slot pszIconPath-value :: ; sealed inline-only slot TreatAsClsid-value :: ; sealed inline-only slot AutoConvertClsid-value :: ; sealed inline-only slot cFileExt-value :: ; sealed inline-only slot prgFileExt-value :: ; sealed inline-only slot pMimeType-value :: ; sealed inline-only slot pDefaultProgId-value :: ; sealed inline-only slot cOtherProgId-value :: ; sealed inline-only slot prgOtherProgId-value :: ; pack: 8; pointer-type-name: ; c-name: "struct tagCLASSDETAIL"; end C-struct ; define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); define sealed domain make (singleton()); define sealed domain initialize (); // --- end of data from "objidl.h" --- define C-function CoInitialize parameter pvReserved :: ; result status :: ; c-name: "CoInitialize", c-modifiers: "__stdcall"; end; define C-function CoUninitialize c-name: "CoUninitialize", c-modifiers: "__stdcall"; end; define C-function CoGetMalloc parameter dwMemContext :: ; output parameter ppMalloc :: ; // result status :: ; c-name: "CoGetMalloc", c-modifiers: "__stdcall"; end; define C-function CoGetCurrentProcess result value :: ; c-name: "CoGetCurrentProcess", c-modifiers: "__stdcall"; end; define C-function CoGetClassObject parameter rclsid :: ; parameter dwClsContext :: ; parameter pvReserved :: ; parameter riid :: ; output parameter ppv :: ; result status :: ; c-name: "CoGetClassObject", c-modifiers: "__stdcall"; end; define C-function CoRegisterClassObject parameter rclsid :: ; parameter pUnk :: ; parameter dwClsContext :: ; parameter flags :: ; output parameter lpdwRegister :: ; result status :: ; c-name: "CoRegisterClassObject", c-modifiers: "__stdcall"; end; define C-function CoRevokeClassObject parameter dwRegister :: ; result status :: ; c-name: "CoRevokeClassObject", c-modifiers: "__stdcall"; end; define C-function CoGetPSClsid parameter riid :: ; parameter pClsid :: ; result status :: ; c-name: "CoGetPSClsid", c-modifiers: "__stdcall"; end; define C-function CoGetMarshalSizeMax output parameter pulSize :: ; parameter riid :: ; parameter pUnk :: ; parameter dwDestContext :: ; parameter pvDestContext :: ; parameter mshlflags :: ; result status :: ; c-name: "CoGetMarshalSizeMax", c-modifiers: "__stdcall"; end; define C-function CoMarshalInterface parameter pStm :: ; parameter riid :: ; parameter pUnk :: ; parameter dwDestContext :: ; parameter pvDestContext :: ; parameter mshlflags :: ; result status :: ; c-name: "CoMarshalInterface", c-modifiers: "__stdcall"; end; define C-function CoUnmarshalInterface parameter pStm :: ; parameter riid :: ; output parameter ppv :: ; result status :: ; c-name: "CoUnmarshalInterface", c-modifiers: "__stdcall"; end; define C-function CoMarshalHresult parameter pstm :: ; parameter hresult :: ; result status :: ; c-name: "CoMarshalHresult", c-modifiers: "__stdcall"; end; define C-function CoUnmarshalHresult parameter pstm :: ; output parameter phresult :: ; result status :: ; c-name: "CoUnmarshalHresult", c-modifiers: "__stdcall"; end; define C-function CoReleaseMarshalData parameter pStm :: ; result status :: ; c-name: "CoReleaseMarshalData", c-modifiers: "__stdcall"; end; define C-function CoDisconnectObject parameter pUnk :: ; parameter dwReserved :: ; result status :: ; c-name: "CoDisconnectObject", c-modifiers: "__stdcall"; end; define C-function CoLockObjectExternal parameter pUnk :: ; parameter fLock :: ; parameter fLastUnlockReleases :: ; result status :: ; c-name: "CoLockObjectExternal", c-modifiers: "__stdcall"; end; define C-function CoGetStandardMarshal parameter riid :: ; parameter pUnk :: ; parameter dwDestContext :: ; parameter pvDestContext :: ; parameter mshlflags :: ; output parameter ppMarshal :: ; // result status :: ; c-name: "CoGetStandardMarshal", c-modifiers: "__stdcall"; end; define C-function CoIsHandlerConnected parameter pUnk :: ; result value :: ; c-name: "CoIsHandlerConnected", c-modifiers: "__stdcall"; end; define C-function CoMarshalInterThreadInterfaceInStream parameter riid :: ; parameter pUnk :: ; output parameter ppStm :: ; result status :: ; c-name: "CoMarshalInterThreadInterfaceInStream", c-modifiers: "__stdcall"; end; define C-function CoGetInterfaceAndReleaseStream parameter pStm :: ; parameter iid :: ; output parameter ppv :: ; result status :: ; c-name: "CoGetInterfaceAndReleaseStream", c-modifiers: "__stdcall"; end; define C-function CoCreateFreeThreadedMarshaler parameter punkOuter :: ; output parameter ppunkMarshal :: ; result status :: ; c-name: "CoCreateFreeThreadedMarshaler", c-modifiers: "__stdcall"; end; define C-function CoLoadLibrary parameter lpszLibName :: ; parameter bAutoFree :: ; result value :: ; c-name: "CoLoadLibrary", c-modifiers: "__stdcall"; end; define C-function CoFreeLibrary parameter hInst :: ; c-name: "CoFreeLibrary", c-modifiers: "__stdcall"; end; define C-function CoFreeAllLibraries c-name: "CoFreeAllLibraries", c-modifiers: "__stdcall"; end; define C-function CoFreeUnusedLibraries c-name: "CoFreeUnusedLibraries", c-modifiers: "__stdcall"; end; define C-function CoCreateInstance parameter rclsid :: ; parameter pUnkOuter :: ; parameter dwClsContext :: ; parameter riid :: ; output parameter ppv :: ; result status :: ; c-name: "CoCreateInstance", c-modifiers: "__stdcall"; end; define C-function StringFromCLSID parameter rclsid :: ; output parameter lplpsz :: ; result status :: ; c-name: "StringFromCLSID", c-modifiers: "__stdcall"; end; define C-function CLSIDFromString parameter lpsz :: ; parameter pclsid :: ; result status :: ; c-name: "CLSIDFromString", c-modifiers: "__stdcall"; end; define C-function StringFromIID parameter rclsid :: ; output parameter lplpsz :: ; result status :: ; c-name: "StringFromIID", c-modifiers: "__stdcall"; end; define C-function IIDFromString parameter lpsz :: ; parameter lpiid :: ; result status :: ; c-name: "IIDFromString", c-modifiers: "__stdcall"; end; define C-function CoIsOle1Class parameter rclsid :: ; result value :: ; c-name: "CoIsOle1Class", c-modifiers: "__stdcall"; end; define C-function ProgIDFromCLSID parameter clsid :: ; output parameter lplpszProgID :: ; result status :: ; c-name: "ProgIDFromCLSID", c-modifiers: "__stdcall"; end; define C-function CLSIDFromProgID parameter lpszProgID :: ; parameter lpclsid :: ; result status :: ; c-name: "CLSIDFromProgID", c-modifiers: "__stdcall"; end; define C-function StringFromGUID2 parameter rguid :: ; parameter lpsz :: ; parameter cbMax :: ; result value :: ; c-name: "StringFromGUID2", c-modifiers: "__stdcall"; end; define C-function CoCreateGuid parameter pguid :: ; result status :: ; c-name: "CoCreateGuid", c-modifiers: "__stdcall"; end; define C-function CoFileTimeToDosDateTime parameter lpFileTime :: ; output parameter lpDosDate :: ; output parameter lpDosTime :: ; result value :: ; c-name: "CoFileTimeToDosDateTime", c-modifiers: "__stdcall"; end; define C-function CoDosDateTimeToFileTime parameter nDosDate :: ; parameter nDosTime :: ; parameter lpFileTime :: ; result value :: ; c-name: "CoDosDateTimeToFileTime", c-modifiers: "__stdcall"; end; define C-function CoFileTimeNow parameter lpFileTime :: ; result status :: ; c-name: "CoFileTimeNow", c-modifiers: "__stdcall"; end; define C-function CoRegisterMessageFilter parameter lpMessageFilter :: ; output parameter lplpMessageFilter :: ; // result status :: ; c-name: "CoRegisterMessageFilter", c-modifiers: "__stdcall"; end; define C-function CoGetTreatAsClass parameter clsidOld :: ; parameter pClsidNew :: ; result status :: ; c-name: "CoGetTreatAsClass", c-modifiers: "__stdcall"; end; define C-function CoTreatAsClass parameter clsidOld :: ; parameter clsidNew :: ; result status :: ; c-name: "CoTreatAsClass", c-modifiers: "__stdcall"; end; define C-function CoTaskMemAlloc parameter cb :: ; result value :: ; c-name: "CoTaskMemAlloc", c-modifiers: "__stdcall"; end; define C-function CoTaskMemRealloc parameter pv :: ; parameter cb :: ; result value :: ; c-name: "CoTaskMemRealloc", c-modifiers: "__stdcall"; end; define C-function CoTaskMemFree parameter pv :: ; c-name: "CoTaskMemFree", c-modifiers: "__stdcall"; end; define C-function CreateDataAdviseHolder output parameter ppDAHolder :: ; // result status :: ; c-name: "CreateDataAdviseHolder", c-modifiers: "__stdcall"; end; define C-function CreateDataCache parameter pUnkOuter :: ; parameter rclsid :: ; parameter iid :: ; output parameter ppv :: ; result status :: ; c-name: "CreateDataCache", c-modifiers: "__stdcall"; end; define C-function StgCreateDocfile parameter pwcsName :: /* const */ ; parameter grfMode :: ; parameter reserved :: ; output parameter ppstgOpen :: /* IStorage */; result status :: ; c-name: "StgCreateDocfile", c-modifiers: "__stdcall"; end; define C-function StgCreateDocfileOnILockBytes parameter plkbyt :: /* ILockBytes */; parameter grfMode :: ; parameter reserved :: ; output parameter ppstgOpen :: /* IStorage */; result status :: ; c-name: "StgCreateDocfileOnILockBytes", c-modifiers: "__stdcall"; end; define C-function StgOpenStorage parameter pwcsName :: /* const */ ; parameter pstgPriority :: /* IStorage */; parameter grfMode :: ; parameter snbExclude :: ; parameter reserved :: ; output parameter ppstgOpen :: /* IStorage */; result status :: ; c-name: "StgOpenStorage", c-modifiers: "__stdcall"; end; define C-function StgOpenStorageOnILockBytes parameter plkbyt :: /* ILockBytes */; parameter pstgPriority :: /* IStorage */; parameter grfMode :: ; parameter snbExclude :: ; parameter reserved :: ; output parameter ppstgOpen :: /* IStorage */; result status :: ; c-name: "StgOpenStorageOnILockBytes", c-modifiers: "__stdcall"; end; define C-function StgIsStorageFile parameter pwcsName :: /* const */ ; result status :: ; c-name: "StgIsStorageFile", c-modifiers: "__stdcall"; end; define C-function StgIsStorageILockBytes parameter plkbyt :: /* ILockBytes */; result status :: ; c-name: "StgIsStorageILockBytes", c-modifiers: "__stdcall"; end; define C-function StgSetTimes parameter lpszName :: ; parameter pctime :: /* const */ ; parameter patime :: /* const */ ; parameter pmtime :: /* const */ ; result status :: ; c-name: "StgSetTimes", c-modifiers: "__stdcall"; end; define C-function BindMoniker parameter pmk :: ; parameter grfOpt :: ; parameter iidResult :: ; output parameter ppvResult :: ; result status :: ; c-name: "BindMoniker", c-modifiers: "__stdcall"; end; define C-function MkParseDisplayName parameter pbc :: ; parameter szUserName :: ; output parameter pchEaten :: ; output parameter ppmk :: ; // result status :: ; c-name: "MkParseDisplayName", c-modifiers: "__stdcall"; end; define C-function MonikerRelativePathTo parameter pmkSrc :: ; parameter pmkDest :: ; output parameter ppmkRelPath :: ; // parameter dwReserved :: ; result status :: ; c-name: "MonikerRelativePathTo", c-modifiers: "__stdcall"; end; define C-function MonikerCommonPrefixWith parameter pmkThis :: ; parameter pmkOther :: ; output parameter ppmkCommon :: ; // result status :: ; c-name: "MonikerCommonPrefixWith", c-modifiers: "__stdcall"; end; define C-function CreateBindCtx parameter reserved :: ; output parameter ppbc :: ; // result status :: ; c-name: "CreateBindCtx", c-modifiers: "__stdcall"; end; define C-function CreateGenericComposite parameter pmkFirst :: ; parameter pmkRest :: ; output parameter ppmkComposite :: ; // result status :: ; c-name: "CreateGenericComposite", c-modifiers: "__stdcall"; end; define C-function GetClassFile parameter szFilename :: ; parameter pclsid :: ; result status :: ; c-name: "GetClassFile", c-modifiers: "__stdcall"; end; define C-function CreateFileMoniker parameter lpszPathName :: ; output parameter ppmk :: ; // result status :: ; c-name: "CreateFileMoniker", c-modifiers: "__stdcall"; end; define C-function CreateItemMoniker parameter lpszDelim :: ; parameter lpszItem :: ; output parameter ppmk :: ; // result status :: ; c-name: "CreateItemMoniker", c-modifiers: "__stdcall"; end; define C-function CreateAntiMoniker output parameter ppmk :: ; // result status :: ; c-name: "CreateAntiMoniker", c-modifiers: "__stdcall"; end; define C-function CreatePointerMoniker parameter punk :: ; output parameter ppmk :: ; // result status :: ; c-name: "CreatePointerMoniker", c-modifiers: "__stdcall"; end; define C-function GetRunningObjectTable parameter reserved :: ; output parameter pprot :: ; // result status :: ; c-name: "GetRunningObjectTable", c-modifiers: "__stdcall"; end; /* Note: the following functions are not included because they are not supported in Windows 95: CoAddRefServerProcess CoCopyProxy CoCreateInstanceEx CoGetCallContext CoGetInstanceFromFile CoGetInstanceFromIStorage CoGetObject CoImpersonateClient CoInitializeEx CoInitializeSecurity CoQueryAuthenticationServices CoQueryClientBlanket CoQueryProxyBlanket CoRegisterChannelHook CoRegisterPSClsid CoRegisterSurrogate CoReleaseServerProcess CoResumeClassObjects CoRevertToSelf CoSetProxyBlanket CoSuspendClassObjects CoSwitchCallContext CreateClassMoniker StgGetIFillLockBytesOnFile StgGetIFillLockBytesOnILockBytes StgOpenAsyncDocfileOnIFillLockBytes */