blob: 8f51c7bb159837ac8e4ec88efaaabe63eedeb23f [file] [log] [blame]
/*** 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 <rpc.h>
#include <rpcndr.h>
#endif
#ifndef COM_NO_WINDOWS_H
#include <windows.h>
#include <ole2.h>
#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 <wtypes.h>
#include <objidl.h>
#include <oaidl.h>
#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 <winapifamily.h>
#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__ */