wine/include/propidl.h
Francois Gouget 83755cca97 Move the PROPVARIANT declaration from objidl.idl to propidl.idl.
Move related API declarations from individual C files to propidl.idl.
Remove uneeded include of propidl.h in the propvariant.c test.
2004-09-09 19:23:19 +00:00

958 lines
28 KiB
C

/*** Autogenerated by WIDL 0.1 from propidl.idl - Do not edit ***/
#include <rpc.h>
#include <rpcndr.h>
#ifndef __WIDL_PROPIDL_H
#define __WIDL_PROPIDL_H
#ifdef __cplusplus
extern "C" {
#endif
#include <objidl.h>
#include <oaidl.h>
#ifndef __IEnumSTATPROPSTG_FWD_DEFINED__
#define __IEnumSTATPROPSTG_FWD_DEFINED__
typedef struct IEnumSTATPROPSTG IEnumSTATPROPSTG;
#endif
#ifndef __IEnumSTATPROPSETSTG_FWD_DEFINED__
#define __IEnumSTATPROPSETSTG_FWD_DEFINED__
typedef struct IEnumSTATPROPSETSTG IEnumSTATPROPSETSTG;
#endif
#ifndef __IPropertyStorage_FWD_DEFINED__
#define __IPropertyStorage_FWD_DEFINED__
typedef struct IPropertyStorage IPropertyStorage;
#endif
typedef IPropertyStorage *LPPROPERTYSTORAGE;
#define PROPSETFLAG_DEFAULT (0)
#define PROPSETFLAG_NONSIMPLE (1)
#define PROPSETFLAG_ANSI (2)
#define PROPSETFLAG_UNBUFFERED (4)
typedef struct tagPROPVARIANT PROPVARIANT;
typedef struct tagCAUB {
ULONG cElems;
unsigned char *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;
struct tagPROPVARIANT {
VARTYPE vt;
WORD wReserved1;
WORD wReserved2;
WORD wReserved3;
union {
char cVal;
UCHAR bVal;
short iVal;
USHORT uiVal;
VARIANT_BOOL boolVal;
long lVal;
ULONG ulVal;
float fltVal;
SCODE scode;
LARGE_INTEGER hVal;
ULARGE_INTEGER uhVal;
double dblVal;
CY cyVal;
DATE date;
FILETIME filetime;
CLSID *puuid;
BLOB blob;
CLIPDATA *pclipdata;
IStream *pStream;
IStorage *pStorage;
BSTR bstrVal;
BSTRBLOB bstrblobVal;
LPSTR pszVal;
LPWSTR pwszVal;
CAUB caub;
CAI cai;
CAUI caui;
CABOOL cabool;
CAL cal;
CAUL caul;
CAFLT caflt;
CASCODE cascode;
CAH cah;
CAUH cauh;
CADBL cadbl;
CACY cacy;
CADATE cadate;
CAFILETIME cafiletime;
CACLSID cauuid;
CACLIPDATA caclipdata;
CABSTR cabstr;
CABSTRBLOB cabstrblob;
CALPSTR calpstr;
CALPWSTR calpwstr;
CAPROPVARIANT capropvar;
} DUMMYUNIONNAME;
};
typedef struct tagPROPVARIANT *LPPROPVARIANT;
#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;
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)
struct 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* statpsstg) = 0;
};
#else
typedef struct IPropertyStorageVtbl IPropertyStorageVtbl;
struct IPropertyStorage {
const IPropertyStorageVtbl* lpVtbl;
};
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* statpsstg);
END_INTERFACE
};
#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IPropertyStorage_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IPropertyStorage_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IPropertyStorage_Release(p) (p)->lpVtbl->Release(p)
/*** IPropertyStorage methods ***/
#define IPropertyStorage_ReadMultiple(p,a,b,c) (p)->lpVtbl->ReadMultiple(p,a,b,c)
#define IPropertyStorage_WriteMultiple(p,a,b,c,d) (p)->lpVtbl->WriteMultiple(p,a,b,c,d)
#define IPropertyStorage_DeleteMultiple(p,a,b) (p)->lpVtbl->DeleteMultiple(p,a,b)
#define IPropertyStorage_ReadPropertyNames(p,a,b,c) (p)->lpVtbl->ReadPropertyNames(p,a,b,c)
#define IPropertyStorage_WritePropertyNames(p,a,b,c) (p)->lpVtbl->WritePropertyNames(p,a,b,c)
#define IPropertyStorage_DeletePropertyNames(p,a,b) (p)->lpVtbl->DeletePropertyNames(p,a,b)
#define IPropertyStorage_Commit(p,a) (p)->lpVtbl->Commit(p,a)
#define IPropertyStorage_Revert(p) (p)->lpVtbl->Revert(p)
#define IPropertyStorage_Enum(p,a) (p)->lpVtbl->Enum(p,a)
#define IPropertyStorage_SetTimes(p,a,b,c) (p)->lpVtbl->SetTimes(p,a,b,c)
#define IPropertyStorage_SetClass(p,a) (p)->lpVtbl->SetClass(p,a)
#define IPropertyStorage_Stat(p,a) (p)->lpVtbl->Stat(p,a)
#endif
#endif
#define IPropertyStorage_METHODS \
/*** IUnknown methods ***/ \
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
STDMETHOD_(ULONG,Release)(THIS) PURE; \
/*** IPropertyStorage methods ***/ \
STDMETHOD_(HRESULT,ReadMultiple)(THIS_ ULONG cpspec, const PROPSPEC rgpspec[], PROPVARIANT rgpropvar[]) PURE; \
STDMETHOD_(HRESULT,WriteMultiple)(THIS_ ULONG cpspec, const PROPSPEC rgpspec[], const PROPVARIANT rgpropvar[], PROPID propidNameFirst) PURE; \
STDMETHOD_(HRESULT,DeleteMultiple)(THIS_ ULONG cpspec, const PROPSPEC rgpspec[]) PURE; \
STDMETHOD_(HRESULT,ReadPropertyNames)(THIS_ ULONG cpropid, const PROPID rgpropid[], LPOLESTR rglpwstrName[]) PURE; \
STDMETHOD_(HRESULT,WritePropertyNames)(THIS_ ULONG cpropid, const PROPID rgpropid[], const LPOLESTR rglpwstrName[]) PURE; \
STDMETHOD_(HRESULT,DeletePropertyNames)(THIS_ ULONG cpropid, const PROPID rgpropid[]) PURE; \
STDMETHOD_(HRESULT,Commit)(THIS_ DWORD grfCommitFlags) PURE; \
STDMETHOD_(HRESULT,Revert)(THIS) PURE; \
STDMETHOD_(HRESULT,Enum)(THIS_ IEnumSTATPROPSTG** ppenum) PURE; \
STDMETHOD_(HRESULT,SetTimes)(THIS_ const FILETIME* pctime, const FILETIME* patime, const FILETIME* pmtime) PURE; \
STDMETHOD_(HRESULT,SetClass)(THIS_ REFCLSID clsid) PURE; \
STDMETHOD_(HRESULT,Stat)(THIS_ STATPROPSETSTG* statpsstg) PURE;
HRESULT CALLBACK IPropertyStorage_ReadMultiple_Proxy(
IPropertyStorage* This,
ULONG cpspec,
const PROPSPEC rgpspec[],
PROPVARIANT rgpropvar[]);
void __RPC_STUB IPropertyStorage_ReadMultiple_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IPropertyStorage_WriteMultiple_Proxy(
IPropertyStorage* This,
ULONG cpspec,
const PROPSPEC rgpspec[],
const PROPVARIANT rgpropvar[],
PROPID propidNameFirst);
void __RPC_STUB IPropertyStorage_WriteMultiple_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IPropertyStorage_DeleteMultiple_Proxy(
IPropertyStorage* This,
ULONG cpspec,
const PROPSPEC rgpspec[]);
void __RPC_STUB IPropertyStorage_DeleteMultiple_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IPropertyStorage_ReadPropertyNames_Proxy(
IPropertyStorage* This,
ULONG cpropid,
const PROPID rgpropid[],
LPOLESTR rglpwstrName[]);
void __RPC_STUB IPropertyStorage_ReadPropertyNames_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IPropertyStorage_WritePropertyNames_Proxy(
IPropertyStorage* This,
ULONG cpropid,
const PROPID rgpropid[],
const LPOLESTR rglpwstrName[]);
void __RPC_STUB IPropertyStorage_WritePropertyNames_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IPropertyStorage_DeletePropertyNames_Proxy(
IPropertyStorage* This,
ULONG cpropid,
const PROPID rgpropid[]);
void __RPC_STUB IPropertyStorage_DeletePropertyNames_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IPropertyStorage_Commit_Proxy(
IPropertyStorage* This,
DWORD grfCommitFlags);
void __RPC_STUB IPropertyStorage_Commit_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IPropertyStorage_Revert_Proxy(
IPropertyStorage* This);
void __RPC_STUB IPropertyStorage_Revert_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IPropertyStorage_Enum_Proxy(
IPropertyStorage* This,
IEnumSTATPROPSTG** ppenum);
void __RPC_STUB IPropertyStorage_Enum_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IPropertyStorage_SetTimes_Proxy(
IPropertyStorage* This,
const FILETIME* pctime,
const FILETIME* patime,
const FILETIME* pmtime);
void __RPC_STUB IPropertyStorage_SetTimes_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IPropertyStorage_SetClass_Proxy(
IPropertyStorage* This,
REFCLSID clsid);
void __RPC_STUB IPropertyStorage_SetClass_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IPropertyStorage_Stat_Proxy(
IPropertyStorage* This,
STATPROPSETSTG* statpsstg);
void __RPC_STUB IPropertyStorage_Stat_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
#endif /* __IPropertyStorage_INTERFACE_DEFINED__ */
#ifndef __IPropertySetStorage_FWD_DEFINED__
#define __IPropertySetStorage_FWD_DEFINED__
typedef struct IPropertySetStorage IPropertySetStorage;
#endif
typedef IPropertySetStorage *LPPROPERTYSETSTORAGE;
/*****************************************************************************
* IPropertySetStorage interface
*/
#ifndef __IPropertySetStorage_INTERFACE_DEFINED__
#define __IPropertySetStorage_INTERFACE_DEFINED__
DEFINE_GUID(IID_IPropertySetStorage, 0x0000013a, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
#if defined(__cplusplus) && !defined(CINTERFACE)
struct 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;
};
#else
typedef struct IPropertySetStorageVtbl IPropertySetStorageVtbl;
struct IPropertySetStorage {
const IPropertySetStorageVtbl* lpVtbl;
};
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
};
#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IPropertySetStorage_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IPropertySetStorage_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IPropertySetStorage_Release(p) (p)->lpVtbl->Release(p)
/*** IPropertySetStorage methods ***/
#define IPropertySetStorage_Create(p,a,b,c,d,e) (p)->lpVtbl->Create(p,a,b,c,d,e)
#define IPropertySetStorage_Open(p,a,b,c) (p)->lpVtbl->Open(p,a,b,c)
#define IPropertySetStorage_Delete(p,a) (p)->lpVtbl->Delete(p,a)
#define IPropertySetStorage_Enum(p,a) (p)->lpVtbl->Enum(p,a)
#endif
#endif
#define IPropertySetStorage_METHODS \
/*** IUnknown methods ***/ \
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
STDMETHOD_(ULONG,Release)(THIS) PURE; \
/*** IPropertySetStorage methods ***/ \
STDMETHOD_(HRESULT,Create)(THIS_ REFFMTID rfmtid, const CLSID* pclsid, DWORD grfFlags, DWORD grfMode, IPropertyStorage** ppprstg) PURE; \
STDMETHOD_(HRESULT,Open)(THIS_ REFFMTID rfmtid, DWORD grfMode, IPropertyStorage** ppprstg) PURE; \
STDMETHOD_(HRESULT,Delete)(THIS_ REFFMTID rfmtid) PURE; \
STDMETHOD_(HRESULT,Enum)(THIS_ IEnumSTATPROPSETSTG** ppenum) PURE;
HRESULT CALLBACK IPropertySetStorage_Create_Proxy(
IPropertySetStorage* This,
REFFMTID rfmtid,
const CLSID* pclsid,
DWORD grfFlags,
DWORD grfMode,
IPropertyStorage** ppprstg);
void __RPC_STUB IPropertySetStorage_Create_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IPropertySetStorage_Open_Proxy(
IPropertySetStorage* This,
REFFMTID rfmtid,
DWORD grfMode,
IPropertyStorage** ppprstg);
void __RPC_STUB IPropertySetStorage_Open_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IPropertySetStorage_Delete_Proxy(
IPropertySetStorage* This,
REFFMTID rfmtid);
void __RPC_STUB IPropertySetStorage_Delete_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IPropertySetStorage_Enum_Proxy(
IPropertySetStorage* This,
IEnumSTATPROPSETSTG** ppenum);
void __RPC_STUB IPropertySetStorage_Enum_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
#endif /* __IPropertySetStorage_INTERFACE_DEFINED__ */
typedef IEnumSTATPROPSTG *LPENUMSTATPROPSTG;
/*****************************************************************************
* IEnumSTATPROPSTG interface
*/
#ifndef __IEnumSTATPROPSTG_INTERFACE_DEFINED__
#define __IEnumSTATPROPSTG_INTERFACE_DEFINED__
DEFINE_GUID(IID_IEnumSTATPROPSTG, 0x00000139, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
#if defined(__cplusplus) && !defined(CINTERFACE)
struct 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;
};
#else
typedef struct IEnumSTATPROPSTGVtbl IEnumSTATPROPSTGVtbl;
struct IEnumSTATPROPSTG {
const IEnumSTATPROPSTGVtbl* lpVtbl;
};
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
};
#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IEnumSTATPROPSTG_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IEnumSTATPROPSTG_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IEnumSTATPROPSTG_Release(p) (p)->lpVtbl->Release(p)
/*** IEnumSTATPROPSTG methods ***/
#define IEnumSTATPROPSTG_Next(p,a,b,c) (p)->lpVtbl->Next(p,a,b,c)
#define IEnumSTATPROPSTG_Skip(p,a) (p)->lpVtbl->Skip(p,a)
#define IEnumSTATPROPSTG_Reset(p) (p)->lpVtbl->Reset(p)
#define IEnumSTATPROPSTG_Clone(p,a) (p)->lpVtbl->Clone(p,a)
#endif
#endif
#define IEnumSTATPROPSTG_METHODS \
/*** IUnknown methods ***/ \
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
STDMETHOD_(ULONG,Release)(THIS) PURE; \
/*** IEnumSTATPROPSTG methods ***/ \
STDMETHOD_(HRESULT,Next)(THIS_ ULONG celt, STATPROPSTG* rgelt, ULONG* pceltFetched) PURE; \
STDMETHOD_(HRESULT,Skip)(THIS_ ULONG celt) PURE; \
STDMETHOD_(HRESULT,Reset)(THIS) PURE; \
STDMETHOD_(HRESULT,Clone)(THIS_ IEnumSTATPROPSTG** ppenum) PURE;
HRESULT CALLBACK IEnumSTATPROPSTG_RemoteNext_Proxy(
IEnumSTATPROPSTG* This,
ULONG celt,
STATPROPSTG* rgelt,
ULONG* pceltFetched);
void __RPC_STUB IEnumSTATPROPSTG_RemoteNext_Stub(
struct IRpcStubBuffer* This,
struct 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);
HRESULT CALLBACK IEnumSTATPROPSTG_Skip_Proxy(
IEnumSTATPROPSTG* This,
ULONG celt);
void __RPC_STUB IEnumSTATPROPSTG_Skip_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IEnumSTATPROPSTG_Reset_Proxy(
IEnumSTATPROPSTG* This);
void __RPC_STUB IEnumSTATPROPSTG_Reset_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IEnumSTATPROPSTG_Clone_Proxy(
IEnumSTATPROPSTG* This,
IEnumSTATPROPSTG** ppenum);
void __RPC_STUB IEnumSTATPROPSTG_Clone_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
#endif /* __IEnumSTATPROPSTG_INTERFACE_DEFINED__ */
typedef IEnumSTATPROPSETSTG *LPENUMSTATPROPSETSTG;
/*****************************************************************************
* IEnumSTATPROPSETSTG interface
*/
#ifndef __IEnumSTATPROPSETSTG_INTERFACE_DEFINED__
#define __IEnumSTATPROPSETSTG_INTERFACE_DEFINED__
DEFINE_GUID(IID_IEnumSTATPROPSETSTG, 0x0000013b, 0x0000, 0x0000, 0xc0,0x00, 0x00,0x00,0x00,0x00,0x00,0x46);
#if defined(__cplusplus) && !defined(CINTERFACE)
struct 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;
};
#else
typedef struct IEnumSTATPROPSETSTGVtbl IEnumSTATPROPSETSTGVtbl;
struct IEnumSTATPROPSETSTG {
const IEnumSTATPROPSETSTGVtbl* lpVtbl;
};
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
};
#ifdef COBJMACROS
/*** IUnknown methods ***/
#define IEnumSTATPROPSETSTG_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IEnumSTATPROPSETSTG_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IEnumSTATPROPSETSTG_Release(p) (p)->lpVtbl->Release(p)
/*** IEnumSTATPROPSETSTG methods ***/
#define IEnumSTATPROPSETSTG_Next(p,a,b,c) (p)->lpVtbl->Next(p,a,b,c)
#define IEnumSTATPROPSETSTG_Skip(p,a) (p)->lpVtbl->Skip(p,a)
#define IEnumSTATPROPSETSTG_Reset(p) (p)->lpVtbl->Reset(p)
#define IEnumSTATPROPSETSTG_Clone(p,a) (p)->lpVtbl->Clone(p,a)
#endif
#endif
#define IEnumSTATPROPSETSTG_METHODS \
/*** IUnknown methods ***/ \
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
STDMETHOD_(ULONG,Release)(THIS) PURE; \
/*** IEnumSTATPROPSETSTG methods ***/ \
STDMETHOD_(HRESULT,Next)(THIS_ ULONG celt, STATPROPSETSTG* rgelt, ULONG* pceltFetched) PURE; \
STDMETHOD_(HRESULT,Skip)(THIS_ ULONG celt) PURE; \
STDMETHOD_(HRESULT,Reset)(THIS) PURE; \
STDMETHOD_(HRESULT,Clone)(THIS_ IEnumSTATPROPSETSTG** ppenum) PURE;
HRESULT CALLBACK IEnumSTATPROPSETSTG_RemoteNext_Proxy(
IEnumSTATPROPSETSTG* This,
ULONG celt,
STATPROPSETSTG* rgelt,
ULONG* pceltFetched);
void __RPC_STUB IEnumSTATPROPSETSTG_RemoteNext_Stub(
struct IRpcStubBuffer* This,
struct 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);
HRESULT CALLBACK IEnumSTATPROPSETSTG_Skip_Proxy(
IEnumSTATPROPSETSTG* This,
ULONG celt);
void __RPC_STUB IEnumSTATPROPSETSTG_Skip_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IEnumSTATPROPSETSTG_Reset_Proxy(
IEnumSTATPROPSETSTG* This);
void __RPC_STUB IEnumSTATPROPSETSTG_Reset_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IEnumSTATPROPSETSTG_Clone_Proxy(
IEnumSTATPROPSETSTG* This,
IEnumSTATPROPSETSTG** ppenum);
void __RPC_STUB IEnumSTATPROPSETSTG_Clone_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
#endif /* __IEnumSTATPROPSETSTG_INTERFACE_DEFINED__ */
HRESULT WINAPI FreePropVariantArray(ULONG,PROPVARIANT*);
HRESULT WINAPI PropVariantClear(PROPVARIANT*);
HRESULT WINAPI PropVariantCopy(PROPVARIANT*,const PROPVARIANT*);
#ifdef __cplusplus
}
#endif
#endif /* __WIDL_PROPIDL_H */