/*** Autogenerated by WIDL 6.4 from include/propidl.idl - Do not edit ***/ #ifdef _WIN32 #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 475 #endif #include #include #endif #ifndef COM_NO_WINDOWS_H #include #include #endif #ifndef __propidl_h__ #define __propidl_h__ /* Forward declarations */ #ifndef __IPropertyStorage_FWD_DEFINED__ #define __IPropertyStorage_FWD_DEFINED__ typedef interface IPropertyStorage IPropertyStorage; #ifdef __cplusplus interface IPropertyStorage; #endif /* __cplusplus */ #endif #ifndef __IPropertySetStorage_FWD_DEFINED__ #define __IPropertySetStorage_FWD_DEFINED__ typedef interface IPropertySetStorage IPropertySetStorage; #ifdef __cplusplus interface IPropertySetStorage; #endif /* __cplusplus */ #endif #ifndef __IEnumSTATPROPSTG_FWD_DEFINED__ #define __IEnumSTATPROPSTG_FWD_DEFINED__ typedef interface IEnumSTATPROPSTG IEnumSTATPROPSTG; #ifdef __cplusplus interface IEnumSTATPROPSTG; #endif /* __cplusplus */ #endif #ifndef __IEnumSTATPROPSETSTG_FWD_DEFINED__ #define __IEnumSTATPROPSETSTG_FWD_DEFINED__ typedef interface IEnumSTATPROPSETSTG IEnumSTATPROPSETSTG; #ifdef __cplusplus interface IEnumSTATPROPSETSTG; #endif /* __cplusplus */ #endif /* Headers for imported files */ #include #include #include #ifdef __cplusplus extern "C" { #endif /** * This file is part of the mingw-w64 runtime package. * No warranty is given; refer to the file DISCLAIMER within this package. */ #include #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) #ifndef __IPropertyStorage_FWD_DEFINED__ #define __IPropertyStorage_FWD_DEFINED__ typedef interface IPropertyStorage IPropertyStorage; #ifdef __cplusplus interface IPropertyStorage; #endif /* __cplusplus */ #endif #ifndef __IEnumSTATPROPSTG_FWD_DEFINED__ #define __IEnumSTATPROPSTG_FWD_DEFINED__ typedef interface IEnumSTATPROPSTG IEnumSTATPROPSTG; #ifdef __cplusplus interface IEnumSTATPROPSTG; #endif /* __cplusplus */ #endif #ifndef __IEnumSTATPROPSETSTG_FWD_DEFINED__ #define __IEnumSTATPROPSETSTG_FWD_DEFINED__ typedef interface IEnumSTATPROPSETSTG IEnumSTATPROPSETSTG; #ifdef __cplusplus interface IEnumSTATPROPSETSTG; #endif /* __cplusplus */ #endif typedef struct tagVersionedStream { GUID guidVersion; IStream *pStream; } VERSIONEDSTREAM; typedef struct tagVersionedStream *LPVERSIONEDSTREAM; #define PROPSETFLAG_DEFAULT (0) #define PROPSETFLAG_NONSIMPLE (1) #define PROPSETFLAG_ANSI (2) #define PROPSETFLAG_UNBUFFERED (4) #define PROPSETFLAG_CASE_SENSITIVE (8) #define PROPSET_BEHAVIOR_CASE_SENSITIVE (1) #if 0 typedef struct tag_inner_PROPVARIANT PROPVARIANT; #else typedef struct tagPROPVARIANT PROPVARIANT; #endif typedef struct tagCAC { ULONG cElems; CHAR *pElems; } CAC; typedef struct tagCAUB { ULONG cElems; UCHAR *pElems; } CAUB; typedef struct tagCAI { ULONG cElems; SHORT *pElems; } CAI; typedef struct tagCAUI { ULONG cElems; USHORT *pElems; } CAUI; typedef struct tagCAL { ULONG cElems; LONG *pElems; } CAL; typedef struct tagCAUL { ULONG cElems; ULONG *pElems; } CAUL; typedef struct tagCAFLT { ULONG cElems; FLOAT *pElems; } CAFLT; typedef struct tagCADBL { ULONG cElems; DOUBLE *pElems; } CADBL; typedef struct tagCACY { ULONG cElems; CY *pElems; } CACY; typedef struct tagCADATE { ULONG cElems; DATE *pElems; } CADATE; typedef struct tagCABSTR { ULONG cElems; BSTR *pElems; } CABSTR; typedef struct tagCABSTRBLOB { ULONG cElems; BSTRBLOB *pElems; } CABSTRBLOB; typedef struct tagCABOOL { ULONG cElems; VARIANT_BOOL *pElems; } CABOOL; typedef struct tagCASCODE { ULONG cElems; SCODE *pElems; } CASCODE; typedef struct tagCAPROPVARIANT { ULONG cElems; PROPVARIANT *pElems; } CAPROPVARIANT; typedef struct tagCAH { ULONG cElems; LARGE_INTEGER *pElems; } CAH; typedef struct tagCAUH { ULONG cElems; ULARGE_INTEGER *pElems; } CAUH; typedef struct tagCALPSTR { ULONG cElems; LPSTR *pElems; } CALPSTR; typedef struct tagCALPWSTR { ULONG cElems; LPWSTR *pElems; } CALPWSTR; typedef struct tagCAFILETIME { ULONG cElems; FILETIME *pElems; } CAFILETIME; typedef struct tagCACLIPDATA { ULONG cElems; CLIPDATA *pElems; } CACLIPDATA; typedef struct tagCACLSID { ULONG cElems; CLSID *pElems; } CACLSID; #if 0 typedef BYTE PROPVAR_PAD1; typedef BYTE PROPVAR_PAD2; typedef ULONG PROPVAR_PAD3; #else typedef WORD PROPVAR_PAD1; typedef WORD PROPVAR_PAD2; typedef WORD PROPVAR_PAD3; #define tag_inner_PROPVARIANT #endif struct tagPROPVARIANT { __C89_NAMELESS union { __C89_NAMELESS struct tag_inner_PROPVARIANT { VARTYPE vt; PROPVAR_PAD1 wReserved1; PROPVAR_PAD2 wReserved2; PROPVAR_PAD3 wReserved3; __C89_NAMELESS union { CHAR cVal; UCHAR bVal; SHORT iVal; USHORT uiVal; LONG lVal; ULONG ulVal; INT intVal; UINT uintVal; LARGE_INTEGER hVal; ULARGE_INTEGER uhVal; FLOAT fltVal; DOUBLE dblVal; VARIANT_BOOL boolVal; SCODE scode; CY cyVal; DATE date; FILETIME filetime; CLSID *puuid; CLIPDATA *pclipdata; BSTR bstrVal; BSTRBLOB bstrblobVal; BLOB blob; LPSTR pszVal; LPWSTR pwszVal; IUnknown *punkVal; IDispatch *pdispVal; IStream *pStream; IStorage *pStorage; LPVERSIONEDSTREAM pVersionedStream; LPSAFEARRAY parray; CAC cac; CAUB caub; CAI cai; CAUI caui; CAL cal; CAUL caul; CAH cah; CAUH cauh; CAFLT caflt; CADBL cadbl; CABOOL cabool; CASCODE cascode; CACY cacy; CADATE cadate; CAFILETIME cafiletime; CACLSID cauuid; CACLIPDATA caclipdata; CABSTR cabstr; CABSTRBLOB cabstrblob; CALPSTR calpstr; CALPWSTR calpwstr; CAPROPVARIANT capropvar; CHAR *pcVal; UCHAR *pbVal; SHORT *piVal; USHORT *puiVal; LONG *plVal; ULONG *pulVal; INT *pintVal; UINT *puintVal; FLOAT *pfltVal; DOUBLE *pdblVal; VARIANT_BOOL *pboolVal; DECIMAL *pdecVal; SCODE *pscode; CY *pcyVal; DATE *pdate; BSTR *pbstrVal; IUnknown **ppunkVal; IDispatch **ppdispVal; LPSAFEARRAY *pparray; PROPVARIANT *pvarVal; } __C89_NAMELESSUNIONNAME; }; DECIMAL decVal; }; }; #if 0 typedef struct tag_inner_PROPVARIANT *LPPROPVARIANT; typedef const PROPVARIANT *REFPROPVARIANT; #else typedef struct tagPROPVARIANT * LPPROPVARIANT; #ifndef _REFPROPVARIANT_DEFINED #define _REFPROPVARIANT_DEFINED #ifdef __cplusplus #define REFPROPVARIANT const PROPVARIANT & #else #define REFPROPVARIANT const PROPVARIANT * __MIDL_CONST #endif #endif #endif #define PID_DICTIONARY (0x0) #define PID_CODEPAGE (0x1) #define PID_FIRST_USABLE (0x2) #define PID_FIRST_NAME_DEFAULT (0xfff) #define PID_LOCALE (0x80000000) #define PID_MODIFY_TIME (0x80000001) #define PID_SECURITY (0x80000002) #define PID_BEHAVIOR (0x80000003) #define PID_ILLEGAL (0xffffffff) #define PID_MIN_READONLY (0x80000000) #define PID_MAX_READONLY (0xbfffffff) #endif #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) #define PIDDI_THUMBNAIL __MSABI_LONG(0x2) #define PIDSI_TITLE __MSABI_LONG(0x2) #define PIDSI_SUBJECT __MSABI_LONG(0x3) #define PIDSI_AUTHOR __MSABI_LONG(0x4) #define PIDSI_KEYWORDS __MSABI_LONG(0x5) #define PIDSI_COMMENTS __MSABI_LONG(0x6) #define PIDSI_TEMPLATE __MSABI_LONG(0x7) #define PIDSI_LASTAUTHOR __MSABI_LONG(0x8) #define PIDSI_REVNUMBER __MSABI_LONG(0x9) #define PIDSI_EDITTIME __MSABI_LONG(0xa) #define PIDSI_LASTPRINTED __MSABI_LONG(0xb) #define PIDSI_CREATE_DTM __MSABI_LONG(0xc) #define PIDSI_LASTSAVE_DTM __MSABI_LONG(0xd) #define PIDSI_PAGECOUNT __MSABI_LONG(0xe) #define PIDSI_WORDCOUNT __MSABI_LONG(0xf) #define PIDSI_CHARCOUNT __MSABI_LONG(0x10) #define PIDSI_THUMBNAIL __MSABI_LONG(0x11) #define PIDSI_APPNAME __MSABI_LONG(0x12) #define PIDSI_DOC_SECURITY __MSABI_LONG(0x13) #define PIDDSI_CATEGORY 0x00000002 #define PIDDSI_PRESFORMAT 0x00000003 #define PIDDSI_BYTECOUNT 0x00000004 #define PIDDSI_LINECOUNT 0x00000005 #define PIDDSI_PARCOUNT 0x00000006 #define PIDDSI_SLIDECOUNT 0x00000007 #define PIDDSI_NOTECOUNT 0x00000008 #define PIDDSI_HIDDENCOUNT 0x00000009 #define PIDDSI_MMCLIPCOUNT 0x0000000A #define PIDDSI_SCALE 0x0000000B #define PIDDSI_HEADINGPAIR 0x0000000C #define PIDDSI_DOCPARTS 0x0000000D #define PIDDSI_MANAGER 0x0000000E #define PIDDSI_COMPANY 0x0000000F #define PIDDSI_LINKSDIRTY 0x00000010 #define PIDMSI_EDITOR __MSABI_LONG(0x2) #define PIDMSI_SUPPLIER __MSABI_LONG(0x3) #define PIDMSI_SOURCE __MSABI_LONG(0x4) #define PIDMSI_SEQUENCE_NO __MSABI_LONG(0x5) #define PIDMSI_PROJECT __MSABI_LONG(0x6) #define PIDMSI_STATUS __MSABI_LONG(0x7) #define PIDMSI_OWNER __MSABI_LONG(0x8) #define PIDMSI_RATING __MSABI_LONG(0x9) #define PIDMSI_PRODUCTION __MSABI_LONG(0xa) #define PIDMSI_COPYRIGHT __MSABI_LONG(0xb) enum PIDMSI_STATUS_VALUE { PIDMSI_STATUS_NORMAL = 0, PIDMSI_STATUS_NEW = 1, PIDMSI_STATUS_PRELIM = 2, PIDMSI_STATUS_DRAFT = 3, PIDMSI_STATUS_INPROGRESS = 4, PIDMSI_STATUS_EDIT = 5, PIDMSI_STATUS_REVIEW = 6, PIDMSI_STATUS_PROOF = 7, PIDMSI_STATUS_FINAL = 8, PIDMSI_STATUS_OTHER = 0x7fff }; #endif #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) #define PRSPEC_INVALID (0xffffffff) #define PRSPEC_LPWSTR (0) #define PRSPEC_PROPID (1) typedef struct tagPROPSPEC { ULONG ulKind; union { PROPID propid; LPOLESTR lpwstr; } DUMMYUNIONNAME; } PROPSPEC; typedef struct tagSTATPROPSTG { LPOLESTR lpwstrName; PROPID propid; VARTYPE vt; } STATPROPSTG; #define PROPSETHDR_OSVER_KIND(dwOSVer) HIWORD((dwOSVer)) #define PROPSETHDR_OSVER_MAJOR(dwOSVer) LOBYTE(LOWORD((dwOSVer))) #define PROPSETHDR_OSVER_MINOR(dwOSVer) HIBYTE(LOWORD((dwOSVer))) #define PROPSETHDR_OSVERSION_UNKNOWN 0xffffffff typedef struct tagSTATPROPSETSTG { FMTID fmtid; CLSID clsid; DWORD grfFlags; FILETIME mtime; FILETIME ctime; FILETIME atime; DWORD dwOSVersion; } STATPROPSETSTG; /***************************************************************************** * IPropertyStorage interface */ #ifndef __IPropertyStorage_INTERFACE_DEFINED__ #define __IPropertyStorage_INTERFACE_DEFINED__ DEFINE_GUID(IID_IPropertyStorage, 0x00000138, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("00000138-0000-0000-c000-000000000046") IPropertyStorage : public IUnknown { virtual HRESULT STDMETHODCALLTYPE ReadMultiple( ULONG cpspec, const PROPSPEC rgpspec[], PROPVARIANT rgpropvar[]) = 0; virtual HRESULT STDMETHODCALLTYPE WriteMultiple( ULONG cpspec, const PROPSPEC rgpspec[], const PROPVARIANT rgpropvar[], PROPID propidNameFirst) = 0; virtual HRESULT STDMETHODCALLTYPE DeleteMultiple( ULONG cpspec, const PROPSPEC rgpspec[]) = 0; virtual HRESULT STDMETHODCALLTYPE ReadPropertyNames( ULONG cpropid, const PROPID rgpropid[], LPOLESTR rglpwstrName[]) = 0; virtual HRESULT STDMETHODCALLTYPE WritePropertyNames( ULONG cpropid, const PROPID rgpropid[], const LPOLESTR rglpwstrName[]) = 0; virtual HRESULT STDMETHODCALLTYPE DeletePropertyNames( ULONG cpropid, const PROPID rgpropid[]) = 0; virtual HRESULT STDMETHODCALLTYPE Commit( DWORD grfCommitFlags) = 0; virtual HRESULT STDMETHODCALLTYPE Revert( ) = 0; virtual HRESULT STDMETHODCALLTYPE Enum( IEnumSTATPROPSTG **ppenum) = 0; virtual HRESULT STDMETHODCALLTYPE SetTimes( const FILETIME *pctime, const FILETIME *patime, const FILETIME *pmtime) = 0; virtual HRESULT STDMETHODCALLTYPE SetClass( REFCLSID clsid) = 0; virtual HRESULT STDMETHODCALLTYPE Stat( STATPROPSETSTG *pstatpsstg) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertyStorage, 0x00000138, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IPropertyStorageVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertyStorage *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertyStorage *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertyStorage *This); /*** IPropertyStorage methods ***/ HRESULT (STDMETHODCALLTYPE *ReadMultiple)( IPropertyStorage *This, ULONG cpspec, const PROPSPEC rgpspec[], PROPVARIANT rgpropvar[]); HRESULT (STDMETHODCALLTYPE *WriteMultiple)( IPropertyStorage *This, ULONG cpspec, const PROPSPEC rgpspec[], const PROPVARIANT rgpropvar[], PROPID propidNameFirst); HRESULT (STDMETHODCALLTYPE *DeleteMultiple)( IPropertyStorage *This, ULONG cpspec, const PROPSPEC rgpspec[]); HRESULT (STDMETHODCALLTYPE *ReadPropertyNames)( IPropertyStorage *This, ULONG cpropid, const PROPID rgpropid[], LPOLESTR rglpwstrName[]); HRESULT (STDMETHODCALLTYPE *WritePropertyNames)( IPropertyStorage *This, ULONG cpropid, const PROPID rgpropid[], const LPOLESTR rglpwstrName[]); HRESULT (STDMETHODCALLTYPE *DeletePropertyNames)( IPropertyStorage *This, ULONG cpropid, const PROPID rgpropid[]); HRESULT (STDMETHODCALLTYPE *Commit)( IPropertyStorage *This, DWORD grfCommitFlags); HRESULT (STDMETHODCALLTYPE *Revert)( IPropertyStorage *This); HRESULT (STDMETHODCALLTYPE *Enum)( IPropertyStorage *This, IEnumSTATPROPSTG **ppenum); HRESULT (STDMETHODCALLTYPE *SetTimes)( IPropertyStorage *This, const FILETIME *pctime, const FILETIME *patime, const FILETIME *pmtime); HRESULT (STDMETHODCALLTYPE *SetClass)( IPropertyStorage *This, REFCLSID clsid); HRESULT (STDMETHODCALLTYPE *Stat)( IPropertyStorage *This, STATPROPSETSTG *pstatpsstg); END_INTERFACE } IPropertyStorageVtbl; interface IPropertyStorage { CONST_VTBL IPropertyStorageVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertyStorage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertyStorage_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertyStorage_Release(This) (This)->lpVtbl->Release(This) /*** IPropertyStorage methods ***/ #define IPropertyStorage_ReadMultiple(This,cpspec,rgpspec,rgpropvar) (This)->lpVtbl->ReadMultiple(This,cpspec,rgpspec,rgpropvar) #define IPropertyStorage_WriteMultiple(This,cpspec,rgpspec,rgpropvar,propidNameFirst) (This)->lpVtbl->WriteMultiple(This,cpspec,rgpspec,rgpropvar,propidNameFirst) #define IPropertyStorage_DeleteMultiple(This,cpspec,rgpspec) (This)->lpVtbl->DeleteMultiple(This,cpspec,rgpspec) #define IPropertyStorage_ReadPropertyNames(This,cpropid,rgpropid,rglpwstrName) (This)->lpVtbl->ReadPropertyNames(This,cpropid,rgpropid,rglpwstrName) #define IPropertyStorage_WritePropertyNames(This,cpropid,rgpropid,rglpwstrName) (This)->lpVtbl->WritePropertyNames(This,cpropid,rgpropid,rglpwstrName) #define IPropertyStorage_DeletePropertyNames(This,cpropid,rgpropid) (This)->lpVtbl->DeletePropertyNames(This,cpropid,rgpropid) #define IPropertyStorage_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags) #define IPropertyStorage_Revert(This) (This)->lpVtbl->Revert(This) #define IPropertyStorage_Enum(This,ppenum) (This)->lpVtbl->Enum(This,ppenum) #define IPropertyStorage_SetTimes(This,pctime,patime,pmtime) (This)->lpVtbl->SetTimes(This,pctime,patime,pmtime) #define IPropertyStorage_SetClass(This,clsid) (This)->lpVtbl->SetClass(This,clsid) #define IPropertyStorage_Stat(This,pstatpsstg) (This)->lpVtbl->Stat(This,pstatpsstg) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertyStorage_QueryInterface(IPropertyStorage* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertyStorage_AddRef(IPropertyStorage* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertyStorage_Release(IPropertyStorage* This) { return This->lpVtbl->Release(This); } /*** IPropertyStorage methods ***/ static FORCEINLINE HRESULT IPropertyStorage_ReadMultiple(IPropertyStorage* This,ULONG cpspec,const PROPSPEC rgpspec[],PROPVARIANT rgpropvar[]) { return This->lpVtbl->ReadMultiple(This,cpspec,rgpspec,rgpropvar); } static FORCEINLINE HRESULT IPropertyStorage_WriteMultiple(IPropertyStorage* This,ULONG cpspec,const PROPSPEC rgpspec[],const PROPVARIANT rgpropvar[],PROPID propidNameFirst) { return This->lpVtbl->WriteMultiple(This,cpspec,rgpspec,rgpropvar,propidNameFirst); } static FORCEINLINE HRESULT IPropertyStorage_DeleteMultiple(IPropertyStorage* This,ULONG cpspec,const PROPSPEC rgpspec[]) { return This->lpVtbl->DeleteMultiple(This,cpspec,rgpspec); } static FORCEINLINE HRESULT IPropertyStorage_ReadPropertyNames(IPropertyStorage* This,ULONG cpropid,const PROPID rgpropid[],LPOLESTR rglpwstrName[]) { return This->lpVtbl->ReadPropertyNames(This,cpropid,rgpropid,rglpwstrName); } static FORCEINLINE HRESULT IPropertyStorage_WritePropertyNames(IPropertyStorage* This,ULONG cpropid,const PROPID rgpropid[],const LPOLESTR rglpwstrName[]) { return This->lpVtbl->WritePropertyNames(This,cpropid,rgpropid,rglpwstrName); } static FORCEINLINE HRESULT IPropertyStorage_DeletePropertyNames(IPropertyStorage* This,ULONG cpropid,const PROPID rgpropid[]) { return This->lpVtbl->DeletePropertyNames(This,cpropid,rgpropid); } static FORCEINLINE HRESULT IPropertyStorage_Commit(IPropertyStorage* This,DWORD grfCommitFlags) { return This->lpVtbl->Commit(This,grfCommitFlags); } static FORCEINLINE HRESULT IPropertyStorage_Revert(IPropertyStorage* This) { return This->lpVtbl->Revert(This); } static FORCEINLINE HRESULT IPropertyStorage_Enum(IPropertyStorage* This,IEnumSTATPROPSTG **ppenum) { return This->lpVtbl->Enum(This,ppenum); } static FORCEINLINE HRESULT IPropertyStorage_SetTimes(IPropertyStorage* This,const FILETIME *pctime,const FILETIME *patime,const FILETIME *pmtime) { return This->lpVtbl->SetTimes(This,pctime,patime,pmtime); } static FORCEINLINE HRESULT IPropertyStorage_SetClass(IPropertyStorage* This,REFCLSID clsid) { return This->lpVtbl->SetClass(This,clsid); } static FORCEINLINE HRESULT IPropertyStorage_Stat(IPropertyStorage* This,STATPROPSETSTG *pstatpsstg) { return This->lpVtbl->Stat(This,pstatpsstg); } #endif #endif #endif #endif /* __IPropertyStorage_INTERFACE_DEFINED__ */ /***************************************************************************** * IPropertySetStorage interface */ #ifndef __IPropertySetStorage_INTERFACE_DEFINED__ #define __IPropertySetStorage_INTERFACE_DEFINED__ typedef IPropertySetStorage *LPPROPERTYSETSTORAGE; DEFINE_GUID(IID_IPropertySetStorage, 0x0000013a, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0000013a-0000-0000-c000-000000000046") IPropertySetStorage : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Create( REFFMTID rfmtid, const CLSID *pclsid, DWORD grfFlags, DWORD grfMode, IPropertyStorage **ppprstg) = 0; virtual HRESULT STDMETHODCALLTYPE Open( REFFMTID rfmtid, DWORD grfMode, IPropertyStorage **ppprstg) = 0; virtual HRESULT STDMETHODCALLTYPE Delete( REFFMTID rfmtid) = 0; virtual HRESULT STDMETHODCALLTYPE Enum( IEnumSTATPROPSETSTG **ppenum) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IPropertySetStorage, 0x0000013a, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IPropertySetStorageVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IPropertySetStorage *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IPropertySetStorage *This); ULONG (STDMETHODCALLTYPE *Release)( IPropertySetStorage *This); /*** IPropertySetStorage methods ***/ HRESULT (STDMETHODCALLTYPE *Create)( IPropertySetStorage *This, REFFMTID rfmtid, const CLSID *pclsid, DWORD grfFlags, DWORD grfMode, IPropertyStorage **ppprstg); HRESULT (STDMETHODCALLTYPE *Open)( IPropertySetStorage *This, REFFMTID rfmtid, DWORD grfMode, IPropertyStorage **ppprstg); HRESULT (STDMETHODCALLTYPE *Delete)( IPropertySetStorage *This, REFFMTID rfmtid); HRESULT (STDMETHODCALLTYPE *Enum)( IPropertySetStorage *This, IEnumSTATPROPSETSTG **ppenum); END_INTERFACE } IPropertySetStorageVtbl; interface IPropertySetStorage { CONST_VTBL IPropertySetStorageVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IPropertySetStorage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IPropertySetStorage_AddRef(This) (This)->lpVtbl->AddRef(This) #define IPropertySetStorage_Release(This) (This)->lpVtbl->Release(This) /*** IPropertySetStorage methods ***/ #define IPropertySetStorage_Create(This,rfmtid,pclsid,grfFlags,grfMode,ppprstg) (This)->lpVtbl->Create(This,rfmtid,pclsid,grfFlags,grfMode,ppprstg) #define IPropertySetStorage_Open(This,rfmtid,grfMode,ppprstg) (This)->lpVtbl->Open(This,rfmtid,grfMode,ppprstg) #define IPropertySetStorage_Delete(This,rfmtid) (This)->lpVtbl->Delete(This,rfmtid) #define IPropertySetStorage_Enum(This,ppenum) (This)->lpVtbl->Enum(This,ppenum) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IPropertySetStorage_QueryInterface(IPropertySetStorage* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IPropertySetStorage_AddRef(IPropertySetStorage* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IPropertySetStorage_Release(IPropertySetStorage* This) { return This->lpVtbl->Release(This); } /*** IPropertySetStorage methods ***/ static FORCEINLINE HRESULT IPropertySetStorage_Create(IPropertySetStorage* This,REFFMTID rfmtid,const CLSID *pclsid,DWORD grfFlags,DWORD grfMode,IPropertyStorage **ppprstg) { return This->lpVtbl->Create(This,rfmtid,pclsid,grfFlags,grfMode,ppprstg); } static FORCEINLINE HRESULT IPropertySetStorage_Open(IPropertySetStorage* This,REFFMTID rfmtid,DWORD grfMode,IPropertyStorage **ppprstg) { return This->lpVtbl->Open(This,rfmtid,grfMode,ppprstg); } static FORCEINLINE HRESULT IPropertySetStorage_Delete(IPropertySetStorage* This,REFFMTID rfmtid) { return This->lpVtbl->Delete(This,rfmtid); } static FORCEINLINE HRESULT IPropertySetStorage_Enum(IPropertySetStorage* This,IEnumSTATPROPSETSTG **ppenum) { return This->lpVtbl->Enum(This,ppenum); } #endif #endif #endif #endif /* __IPropertySetStorage_INTERFACE_DEFINED__ */ /***************************************************************************** * IEnumSTATPROPSTG interface */ #ifndef __IEnumSTATPROPSTG_INTERFACE_DEFINED__ #define __IEnumSTATPROPSTG_INTERFACE_DEFINED__ typedef IEnumSTATPROPSTG *LPENUMSTATPROPSTG; DEFINE_GUID(IID_IEnumSTATPROPSTG, 0x00000139, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("00000139-0000-0000-c000-000000000046") IEnumSTATPROPSTG : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Next( ULONG celt, STATPROPSTG *rgelt, ULONG *pceltFetched) = 0; virtual HRESULT STDMETHODCALLTYPE Skip( ULONG celt) = 0; virtual HRESULT STDMETHODCALLTYPE Reset( ) = 0; virtual HRESULT STDMETHODCALLTYPE Clone( IEnumSTATPROPSTG **ppenum) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IEnumSTATPROPSTG, 0x00000139, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IEnumSTATPROPSTGVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IEnumSTATPROPSTG *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IEnumSTATPROPSTG *This); ULONG (STDMETHODCALLTYPE *Release)( IEnumSTATPROPSTG *This); /*** IEnumSTATPROPSTG methods ***/ HRESULT (STDMETHODCALLTYPE *Next)( IEnumSTATPROPSTG *This, ULONG celt, STATPROPSTG *rgelt, ULONG *pceltFetched); HRESULT (STDMETHODCALLTYPE *Skip)( IEnumSTATPROPSTG *This, ULONG celt); HRESULT (STDMETHODCALLTYPE *Reset)( IEnumSTATPROPSTG *This); HRESULT (STDMETHODCALLTYPE *Clone)( IEnumSTATPROPSTG *This, IEnumSTATPROPSTG **ppenum); END_INTERFACE } IEnumSTATPROPSTGVtbl; interface IEnumSTATPROPSTG { CONST_VTBL IEnumSTATPROPSTGVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IEnumSTATPROPSTG_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IEnumSTATPROPSTG_AddRef(This) (This)->lpVtbl->AddRef(This) #define IEnumSTATPROPSTG_Release(This) (This)->lpVtbl->Release(This) /*** IEnumSTATPROPSTG methods ***/ #define IEnumSTATPROPSTG_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) #define IEnumSTATPROPSTG_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) #define IEnumSTATPROPSTG_Reset(This) (This)->lpVtbl->Reset(This) #define IEnumSTATPROPSTG_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IEnumSTATPROPSTG_QueryInterface(IEnumSTATPROPSTG* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IEnumSTATPROPSTG_AddRef(IEnumSTATPROPSTG* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IEnumSTATPROPSTG_Release(IEnumSTATPROPSTG* This) { return This->lpVtbl->Release(This); } /*** IEnumSTATPROPSTG methods ***/ static FORCEINLINE HRESULT IEnumSTATPROPSTG_Next(IEnumSTATPROPSTG* This,ULONG celt,STATPROPSTG *rgelt,ULONG *pceltFetched) { return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); } static FORCEINLINE HRESULT IEnumSTATPROPSTG_Skip(IEnumSTATPROPSTG* This,ULONG celt) { return This->lpVtbl->Skip(This,celt); } static FORCEINLINE HRESULT IEnumSTATPROPSTG_Reset(IEnumSTATPROPSTG* This) { return This->lpVtbl->Reset(This); } static FORCEINLINE HRESULT IEnumSTATPROPSTG_Clone(IEnumSTATPROPSTG* This,IEnumSTATPROPSTG **ppenum) { return This->lpVtbl->Clone(This,ppenum); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IEnumSTATPROPSTG_RemoteNext_Proxy( IEnumSTATPROPSTG* This, ULONG celt, STATPROPSTG *rgelt, ULONG *pceltFetched); void __RPC_STUB IEnumSTATPROPSTG_RemoteNext_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IEnumSTATPROPSTG_Next_Proxy( IEnumSTATPROPSTG* This, ULONG celt, STATPROPSTG *rgelt, ULONG *pceltFetched); HRESULT __RPC_STUB IEnumSTATPROPSTG_Next_Stub( IEnumSTATPROPSTG* This, ULONG celt, STATPROPSTG *rgelt, ULONG *pceltFetched); #endif /* __IEnumSTATPROPSTG_INTERFACE_DEFINED__ */ /***************************************************************************** * IEnumSTATPROPSETSTG interface */ #ifndef __IEnumSTATPROPSETSTG_INTERFACE_DEFINED__ #define __IEnumSTATPROPSETSTG_INTERFACE_DEFINED__ typedef IEnumSTATPROPSETSTG *LPENUMSTATPROPSETSTG; DEFINE_GUID(IID_IEnumSTATPROPSETSTG, 0x0000013b, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46); #if defined(__cplusplus) && !defined(CINTERFACE) MIDL_INTERFACE("0000013b-0000-0000-c000-000000000046") IEnumSTATPROPSETSTG : public IUnknown { virtual HRESULT STDMETHODCALLTYPE Next( ULONG celt, STATPROPSETSTG *rgelt, ULONG *pceltFetched) = 0; virtual HRESULT STDMETHODCALLTYPE Skip( ULONG celt) = 0; virtual HRESULT STDMETHODCALLTYPE Reset( ) = 0; virtual HRESULT STDMETHODCALLTYPE Clone( IEnumSTATPROPSETSTG **ppenum) = 0; }; #ifdef __CRT_UUID_DECL __CRT_UUID_DECL(IEnumSTATPROPSETSTG, 0x0000013b, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46) #endif #else typedef struct IEnumSTATPROPSETSTGVtbl { BEGIN_INTERFACE /*** IUnknown methods ***/ HRESULT (STDMETHODCALLTYPE *QueryInterface)( IEnumSTATPROPSETSTG *This, REFIID riid, void **ppvObject); ULONG (STDMETHODCALLTYPE *AddRef)( IEnumSTATPROPSETSTG *This); ULONG (STDMETHODCALLTYPE *Release)( IEnumSTATPROPSETSTG *This); /*** IEnumSTATPROPSETSTG methods ***/ HRESULT (STDMETHODCALLTYPE *Next)( IEnumSTATPROPSETSTG *This, ULONG celt, STATPROPSETSTG *rgelt, ULONG *pceltFetched); HRESULT (STDMETHODCALLTYPE *Skip)( IEnumSTATPROPSETSTG *This, ULONG celt); HRESULT (STDMETHODCALLTYPE *Reset)( IEnumSTATPROPSETSTG *This); HRESULT (STDMETHODCALLTYPE *Clone)( IEnumSTATPROPSETSTG *This, IEnumSTATPROPSETSTG **ppenum); END_INTERFACE } IEnumSTATPROPSETSTGVtbl; interface IEnumSTATPROPSETSTG { CONST_VTBL IEnumSTATPROPSETSTGVtbl* lpVtbl; }; #ifdef COBJMACROS #ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define IEnumSTATPROPSETSTG_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define IEnumSTATPROPSETSTG_AddRef(This) (This)->lpVtbl->AddRef(This) #define IEnumSTATPROPSETSTG_Release(This) (This)->lpVtbl->Release(This) /*** IEnumSTATPROPSETSTG methods ***/ #define IEnumSTATPROPSETSTG_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) #define IEnumSTATPROPSETSTG_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) #define IEnumSTATPROPSETSTG_Reset(This) (This)->lpVtbl->Reset(This) #define IEnumSTATPROPSETSTG_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) #else /*** IUnknown methods ***/ static FORCEINLINE HRESULT IEnumSTATPROPSETSTG_QueryInterface(IEnumSTATPROPSETSTG* This,REFIID riid,void **ppvObject) { return This->lpVtbl->QueryInterface(This,riid,ppvObject); } static FORCEINLINE ULONG IEnumSTATPROPSETSTG_AddRef(IEnumSTATPROPSETSTG* This) { return This->lpVtbl->AddRef(This); } static FORCEINLINE ULONG IEnumSTATPROPSETSTG_Release(IEnumSTATPROPSETSTG* This) { return This->lpVtbl->Release(This); } /*** IEnumSTATPROPSETSTG methods ***/ static FORCEINLINE HRESULT IEnumSTATPROPSETSTG_Next(IEnumSTATPROPSETSTG* This,ULONG celt,STATPROPSETSTG *rgelt,ULONG *pceltFetched) { return This->lpVtbl->Next(This,celt,rgelt,pceltFetched); } static FORCEINLINE HRESULT IEnumSTATPROPSETSTG_Skip(IEnumSTATPROPSETSTG* This,ULONG celt) { return This->lpVtbl->Skip(This,celt); } static FORCEINLINE HRESULT IEnumSTATPROPSETSTG_Reset(IEnumSTATPROPSETSTG* This) { return This->lpVtbl->Reset(This); } static FORCEINLINE HRESULT IEnumSTATPROPSETSTG_Clone(IEnumSTATPROPSETSTG* This,IEnumSTATPROPSETSTG **ppenum) { return This->lpVtbl->Clone(This,ppenum); } #endif #endif #endif HRESULT STDMETHODCALLTYPE IEnumSTATPROPSETSTG_RemoteNext_Proxy( IEnumSTATPROPSETSTG* This, ULONG celt, STATPROPSETSTG *rgelt, ULONG *pceltFetched); void __RPC_STUB IEnumSTATPROPSETSTG_RemoteNext_Stub( IRpcStubBuffer* This, IRpcChannelBuffer* pRpcChannelBuffer, PRPC_MESSAGE pRpcMessage, DWORD* pdwStubPhase); HRESULT CALLBACK IEnumSTATPROPSETSTG_Next_Proxy( IEnumSTATPROPSETSTG* This, ULONG celt, STATPROPSETSTG *rgelt, ULONG *pceltFetched); HRESULT __RPC_STUB IEnumSTATPROPSETSTG_Next_Stub( IEnumSTATPROPSETSTG* This, ULONG celt, STATPROPSETSTG *rgelt, ULONG *pceltFetched); #endif /* __IEnumSTATPROPSETSTG_INTERFACE_DEFINED__ */ typedef IPropertyStorage *LPPROPERTYSTORAGE; WINOLEAPI PropVariantCopy(PROPVARIANT *pvarDest,const PROPVARIANT *pvarSrc); WINOLEAPI PropVariantClear(PROPVARIANT *pvar); WINOLEAPI FreePropVariantArray(ULONG cVariants, PROPVARIANT *rgvars); #define _PROPVARIANTINIT_DEFINED_ #ifdef __cplusplus inline void PropVariantInit (PROPVARIANT *pvar) { memset (pvar, 0, sizeof (PROPVARIANT)); } #else #define PropVariantInit(pvar) memset ((pvar), 0, sizeof (PROPVARIANT)) #endif #ifndef _STGCREATEPROPSTG_DEFINED_ WINOLEAPI StgCreatePropStg(IUnknown *pUnk, REFFMTID fmtid, const CLSID *pclsid, DWORD grfFlags, DWORD dwReserved, IPropertyStorage **ppPropStg); WINOLEAPI StgOpenPropStg(IUnknown *pUnk, REFFMTID fmtid, DWORD grfFlags, DWORD dwReserved, IPropertyStorage **ppPropStg); WINOLEAPI StgCreatePropSetStg(IStorage *pStorage, DWORD dwReserved, IPropertySetStorage **ppPropSetStg); #define CCH_MAX_PROPSTG_NAME 31 WINOLEAPI FmtIdToPropStgName(const FMTID *pfmtid, LPOLESTR oszName); WINOLEAPI PropStgNameToFmtId(const LPOLESTR oszName, FMTID *pfmtid); #endif #ifndef _SERIALIZEDPROPERTYVALUE_DEFINED_ #define _SERIALIZEDPROPERTYVALUE_DEFINED_ typedef struct tagSERIALIZEDPROPERTYVALUE { DWORD dwType; BYTE rgb[1]; } SERIALIZEDPROPERTYVALUE; #endif #endif #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) EXTERN_C SERIALIZEDPROPERTYVALUE * __stdcall StgConvertVariantToProperty(const PROPVARIANT *pvar, USHORT CodePage, SERIALIZEDPROPERTYVALUE *pprop, ULONG *pcb, PROPID pid, BOOLEAN fReserved, ULONG *pcIndirect); #ifdef __cplusplus class PMemoryAllocator; EXTERN_C BOOLEAN __stdcall StgConvertPropertyToVariant(const SERIALIZEDPROPERTYVALUE *pprop, USHORT CodePage, PROPVARIANT *pvar, PMemoryAllocator *pma); #endif #endif /* Begin additional prototypes for all interfaces */ ULONG __RPC_USER BSTR_UserSize (ULONG *, ULONG, BSTR *); unsigned char * __RPC_USER BSTR_UserMarshal (ULONG *, unsigned char *, BSTR *); unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *); void __RPC_USER BSTR_UserFree (ULONG *, BSTR *); ULONG __RPC_USER LPSAFEARRAY_UserSize (ULONG *, ULONG, LPSAFEARRAY *); unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal (ULONG *, unsigned char *, LPSAFEARRAY *); unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal(ULONG *, unsigned char *, LPSAFEARRAY *); void __RPC_USER LPSAFEARRAY_UserFree (ULONG *, LPSAFEARRAY *); /* End additional prototypes */ #ifdef __cplusplus } #endif #endif /* __propidl_h__ */