1 /*** Autogenerated by WIDL 1.5.25 from include/propidl.idl - Do not edit ***/ 2 3 #ifndef __REQUIRED_RPCNDR_H_VERSION__ 4 #define __REQUIRED_RPCNDR_H_VERSION__ 475 5 #endif 6 7 #include <rpc.h> 8 #include <rpcndr.h> 9 10 #ifndef COM_NO_WINDOWS_H 11 #include <windows.h> 12 #include <ole2.h> 13 #endif 14 15 #ifndef __propidl_h__ 16 #define __propidl_h__ 17 18 /* Forward declarations */ 19 20 /* Headers for imported files */ 21 22 #include <objidl.h> 23 #include <oaidl.h> 24 25 #ifdef __cplusplus 26 extern "C" { 27 #endif 28 29 #ifndef __IPropertyStorage_FWD_DEFINED__ 30 #define __IPropertyStorage_FWD_DEFINED__ 31 typedef struct IPropertyStorage IPropertyStorage; 32 #endif 33 34 #ifndef __IPropertySetStorage_FWD_DEFINED__ 35 #define __IPropertySetStorage_FWD_DEFINED__ 36 typedef struct IPropertySetStorage IPropertySetStorage; 37 #endif 38 39 #ifndef __IEnumSTATPROPSTG_FWD_DEFINED__ 40 #define __IEnumSTATPROPSTG_FWD_DEFINED__ 41 typedef struct IEnumSTATPROPSTG IEnumSTATPROPSTG; 42 #endif 43 44 #ifndef __IEnumSTATPROPSETSTG_FWD_DEFINED__ 45 #define __IEnumSTATPROPSETSTG_FWD_DEFINED__ 46 typedef struct IEnumSTATPROPSETSTG IEnumSTATPROPSETSTG; 47 #endif 48 typedef struct tagVersionedStream { 49 GUID guidVersion; 50 IStream *pStream; 51 } VERSIONEDSTREAM; 52 typedef struct tagVersionedStream *LPVERSIONEDSTREAM; 53 #define PROPSETFLAG_DEFAULT (0) 54 55 #define PROPSETFLAG_NONSIMPLE (1) 56 57 #define PROPSETFLAG_ANSI (2) 58 59 #define PROPSETFLAG_UNBUFFERED (4) 60 61 #define PROPSETFLAG_CASE_SENSITIVE (8) 62 63 #define PROPSET_BEHAVIOR_CASE_SENSITIVE (1) 64 65 #if 0 66 typedef struct tag_inner_PROPVARIANT PROPVARIANT; 67 #else 68 typedef struct tagPROPVARIANT PROPVARIANT; 69 #endif 70 typedef struct tagCAC { 71 ULONG cElems; 72 CHAR *pElems; 73 } CAC; 74 typedef struct tagCAUB { 75 ULONG cElems; 76 UCHAR *pElems; 77 } CAUB; 78 typedef struct tagCAI { 79 ULONG cElems; 80 SHORT *pElems; 81 } CAI; 82 typedef struct tagCAUI { 83 ULONG cElems; 84 USHORT *pElems; 85 } CAUI; 86 typedef struct tagCAL { 87 ULONG cElems; 88 LONG *pElems; 89 } CAL; 90 typedef struct tagCAUL { 91 ULONG cElems; 92 ULONG *pElems; 93 } CAUL; 94 typedef struct tagCAFLT { 95 ULONG cElems; 96 FLOAT *pElems; 97 } CAFLT; 98 typedef struct tagCADBL { 99 ULONG cElems; 100 DOUBLE *pElems; 101 } CADBL; 102 typedef struct tagCACY { 103 ULONG cElems; 104 CY *pElems; 105 } CACY; 106 typedef struct tagCADATE { 107 ULONG cElems; 108 DATE *pElems; 109 } CADATE; 110 typedef struct tagCABSTR { 111 ULONG cElems; 112 BSTR *pElems; 113 } CABSTR; 114 typedef struct tagCABSTRBLOB { 115 ULONG cElems; 116 BSTRBLOB *pElems; 117 } CABSTRBLOB; 118 typedef struct tagCABOOL { 119 ULONG cElems; 120 VARIANT_BOOL *pElems; 121 } CABOOL; 122 typedef struct tagCASCODE { 123 ULONG cElems; 124 SCODE *pElems; 125 } CASCODE; 126 typedef struct tagCAPROPVARIANT { 127 ULONG cElems; 128 PROPVARIANT *pElems; 129 } CAPROPVARIANT; 130 typedef struct tagCAH { 131 ULONG cElems; 132 LARGE_INTEGER *pElems; 133 } CAH; 134 typedef struct tagCAUH { 135 ULONG cElems; 136 ULARGE_INTEGER *pElems; 137 } CAUH; 138 typedef struct tagCALPSTR { 139 ULONG cElems; 140 LPSTR *pElems; 141 } CALPSTR; 142 typedef struct tagCALPWSTR { 143 ULONG cElems; 144 LPWSTR *pElems; 145 } CALPWSTR; 146 typedef struct tagCAFILETIME { 147 ULONG cElems; 148 FILETIME *pElems; 149 } CAFILETIME; 150 typedef struct tagCACLIPDATA { 151 ULONG cElems; 152 CLIPDATA *pElems; 153 } CACLIPDATA; 154 typedef struct tagCACLSID { 155 ULONG cElems; 156 CLSID *pElems; 157 } CACLSID; 158 #if 0 159 typedef BYTE PROPVAR_PAD1; 160 typedef BYTE PROPVAR_PAD2; 161 typedef ULONG PROPVAR_PAD3; 162 #else 163 typedef WORD PROPVAR_PAD1; 164 typedef WORD PROPVAR_PAD2; 165 typedef WORD PROPVAR_PAD3; 166 #define tag_inner_PROPVARIANT 167 #endif 168 struct tagPROPVARIANT { 169 __C89_NAMELESS union { 170 __C89_NAMELESS 171 struct tag_inner_PROPVARIANT { 172 VARTYPE vt; 173 PROPVAR_PAD1 wReserved1; 174 PROPVAR_PAD2 wReserved2; 175 PROPVAR_PAD3 wReserved3; 176 __C89_NAMELESS union { 177 CHAR cVal; 178 UCHAR bVal; 179 SHORT iVal; 180 USHORT uiVal; 181 LONG lVal; 182 ULONG ulVal; 183 INT intVal; 184 UINT uintVal; 185 LARGE_INTEGER hVal; 186 ULARGE_INTEGER uhVal; 187 FLOAT fltVal; 188 DOUBLE dblVal; 189 VARIANT_BOOL boolVal; 190 SCODE scode; 191 CY cyVal; 192 DATE date; 193 FILETIME filetime; 194 CLSID *puuid; 195 CLIPDATA *pclipdata; 196 BSTR bstrVal; 197 BSTRBLOB bstrblobVal; 198 BLOB blob; 199 LPSTR pszVal; 200 LPWSTR pwszVal; 201 IUnknown *punkVal; 202 IDispatch *pdispVal; 203 IStream *pStream; 204 IStorage *pStorage; 205 LPVERSIONEDSTREAM pVersionedStream; 206 LPSAFEARRAY parray; 207 CAC cac; 208 CAUB caub; 209 CAI cai; 210 CAUI caui; 211 CAL cal; 212 CAUL caul; 213 CAH cah; 214 CAUH cauh; 215 CAFLT caflt; 216 CADBL cadbl; 217 CABOOL cabool; 218 CASCODE cascode; 219 CACY cacy; 220 CADATE cadate; 221 CAFILETIME cafiletime; 222 CACLSID cauuid; 223 CACLIPDATA caclipdata; 224 CABSTR cabstr; 225 CABSTRBLOB cabstrblob; 226 CALPSTR calpstr; 227 CALPWSTR calpwstr; 228 CAPROPVARIANT capropvar; 229 CHAR *pcVal; 230 UCHAR *pbVal; 231 SHORT *piVal; 232 USHORT *puiVal; 233 LONG *plVal; 234 ULONG *pulVal; 235 INT *pintVal; 236 UINT *puintVal; 237 FLOAT *pfltVal; 238 DOUBLE *pdblVal; 239 VARIANT_BOOL *pboolVal; 240 DECIMAL *pdecVal; 241 SCODE *pscode; 242 CY *pcyVal; 243 DATE *pdate; 244 BSTR *pbstrVal; 245 IUnknown **ppunkVal; 246 IDispatch **ppdispVal; 247 LPSAFEARRAY *pparray; 248 PROPVARIANT *pvarVal; 249 } __C89_NAMELESSUNIONNAME; 250 }; 251 252 DECIMAL decVal; 253 }; 254 }; 255 #if 0 256 typedef struct tag_inner_PROPVARIANT *LPPROPVARIANT; 257 typedef const PROPVARIANT *REFPROPVARIANT; 258 #else 259 typedef struct tagPROPVARIANT *LPPROPVARIANT; 260 261 #ifndef _REFPROPVARIANT_DEFINED 262 #define _REFPROPVARIANT_DEFINED 263 #ifdef __cplusplus 264 #define REFPROPVARIANT const PROPVARIANT & 265 #else 266 #define REFPROPVARIANT const PROPVARIANT * __MIDL_CONST 267 #endif 268 #endif 269 #endif 270 #define PID_DICTIONARY (0) 271 #define PID_CODEPAGE (0x1) 272 #define PID_FIRST_USABLE (0x2) 273 #define PID_FIRST_NAME_DEFAULT (0xfff) 274 #define PID_LOCALE (0x80000000) 275 #define PID_MODIFY_TIME (0x80000001) 276 #define PID_SECURITY (0x80000002) 277 #define PID_BEHAVIOR (0x80000003) 278 #define PID_ILLEGAL (0xffffffff) 279 #define PID_MIN_READONLY (0x80000000) 280 #define PID_MAX_READONLY (0xbfffffff) 281 282 #define PIDDI_THUMBNAIL 0x00000002L 283 284 #define PIDSI_TITLE 0x00000002L 285 #define PIDSI_SUBJECT 0x00000003L 286 #define PIDSI_AUTHOR 0x00000004L 287 #define PIDSI_KEYWORDS 0x00000005L 288 #define PIDSI_COMMENTS 0x00000006L 289 #define PIDSI_TEMPLATE 0x00000007L 290 #define PIDSI_LASTAUTHOR 0x00000008L 291 #define PIDSI_REVNUMBER 0x00000009L 292 #define PIDSI_EDITTIME 0x0000000aL 293 #define PIDSI_LASTPRINTED 0x0000000bL 294 #define PIDSI_CREATE_DTM 0x0000000cL 295 #define PIDSI_LASTSAVE_DTM 0x0000000dL 296 #define PIDSI_PAGECOUNT 0x0000000eL 297 #define PIDSI_WORDCOUNT 0x0000000fL 298 #define PIDSI_CHARCOUNT 0x00000010L 299 #define PIDSI_THUMBNAIL 0x00000011L 300 #define PIDSI_APPNAME 0x00000012L 301 #define PIDSI_DOC_SECURITY 0x00000013L 302 303 #define PIDDSI_CATEGORY 0x00000002 304 #define PIDDSI_PRESFORMAT 0x00000003 305 #define PIDDSI_BYTECOUNT 0x00000004 306 #define PIDDSI_LINECOUNT 0x00000005 307 #define PIDDSI_PARCOUNT 0x00000006 308 #define PIDDSI_SLIDECOUNT 0x00000007 309 #define PIDDSI_NOTECOUNT 0x00000008 310 #define PIDDSI_HIDDENCOUNT 0x00000009 311 #define PIDDSI_MMCLIPCOUNT 0x0000000A 312 #define PIDDSI_SCALE 0x0000000B 313 #define PIDDSI_HEADINGPAIR 0x0000000C 314 #define PIDDSI_DOCPARTS 0x0000000D 315 #define PIDDSI_MANAGER 0x0000000E 316 #define PIDDSI_COMPANY 0x0000000F 317 #define PIDDSI_LINKSDIRTY 0x00000010 318 319 #define PIDMSI_EDITOR 0x00000002L 320 #define PIDMSI_SUPPLIER 0x00000003L 321 #define PIDMSI_SOURCE 0x00000004L 322 #define PIDMSI_SEQUENCE_NO 0x00000005L 323 #define PIDMSI_PROJECT 0x00000006L 324 #define PIDMSI_STATUS 0x00000007L 325 #define PIDMSI_OWNER 0x00000008L 326 #define PIDMSI_RATING 0x00000009L 327 #define PIDMSI_PRODUCTION 0x0000000AL 328 #define PIDMSI_COPYRIGHT 0x0000000BL 329 330 enum PIDMSI_STATUS_VALUE { 331 PIDMSI_STATUS_NORMAL = 0,PIDMSI_STATUS_NEW,PIDMSI_STATUS_PRELIM, 332 PIDMSI_STATUS_DRAFT,PIDMSI_STATUS_INPROGRESS,PIDMSI_STATUS_EDIT, 333 PIDMSI_STATUS_REVIEW,PIDMSI_STATUS_PROOF,PIDMSI_STATUS_FINAL, 334 PIDMSI_STATUS_OTHER = 0x7fff 335 }; 336 #define PRSPEC_INVALID (0xffffffff) 337 #define PRSPEC_LPWSTR (0) 338 #define PRSPEC_PROPID (1) 339 340 typedef struct tagPROPSPEC { 341 ULONG ulKind; 342 __C89_NAMELESS union { 343 PROPID propid; 344 LPOLESTR lpwstr; 345 } DUMMYUNIONNAME; 346 } PROPSPEC; 347 348 typedef struct tagSTATPROPSTG { 349 LPOLESTR lpwstrName; 350 PROPID propid; 351 VARTYPE vt; 352 } STATPROPSTG; 353 354 #define PROPSETHDR_OSVER_KIND(dwOSVer) HIWORD((dwOSVer)) 355 #define PROPSETHDR_OSVER_MAJOR(dwOSVer) LOBYTE(LOWORD((dwOSVer))) 356 #define PROPSETHDR_OSVER_MINOR(dwOSVer) HIBYTE(LOWORD((dwOSVer))) 357 #define PROPSETHDR_OSVERSION_UNKNOWN 0xFFFFFFFF 358 typedef struct tagSTATPROPSETSTG { 359 FMTID fmtid; 360 CLSID clsid; 361 DWORD grfFlags; 362 FILETIME mtime; 363 FILETIME ctime; 364 FILETIME atime; 365 DWORD dwOSVersion; 366 } STATPROPSETSTG; 367 368 extern RPC_IF_HANDLE __MIDL_itf_propidl_0000_v0_0_c_ifspec; 369 extern RPC_IF_HANDLE __MIDL_itf_propidl_0000_v0_0_s_ifspec; 370 371 #ifndef __IPropertyStorage_INTERFACE_DEFINED__ 372 #define __IPropertyStorage_INTERFACE_DEFINED__ 373 EXTERN_C const IID IID_IPropertyStorage; 374 #if defined(__cplusplus) && !defined(CINTERFACE) 375 struct IPropertyStorage : public IUnknown { 376 public: 377 virtual HRESULT WINAPI ReadMultiple(ULONG cpspec,const PROPSPEC rgpspec[],PROPVARIANT rgpropvar[]) = 0; 378 virtual HRESULT WINAPI WriteMultiple(ULONG cpspec,const PROPSPEC rgpspec[],const PROPVARIANT rgpropvar[],PROPID propidNameFirst) = 0; 379 virtual HRESULT WINAPI DeleteMultiple(ULONG cpspec,const PROPSPEC rgpspec[]) = 0; 380 virtual HRESULT WINAPI ReadPropertyNames(ULONG cpropid,const PROPID rgpropid[],LPOLESTR rglpwstrName[]) = 0; 381 virtual HRESULT WINAPI WritePropertyNames(ULONG cpropid,const PROPID rgpropid[],const LPOLESTR rglpwstrName[]) = 0; 382 virtual HRESULT WINAPI DeletePropertyNames(ULONG cpropid,const PROPID rgpropid[]) = 0; 383 virtual HRESULT WINAPI Commit(DWORD grfCommitFlags) = 0; 384 virtual HRESULT WINAPI Revert(void) = 0; 385 virtual HRESULT WINAPI Enum(IEnumSTATPROPSTG **ppenum) = 0; 386 virtual HRESULT WINAPI SetTimes(const FILETIME *pctime,const FILETIME *patime,const FILETIME *pmtime) = 0; 387 virtual HRESULT WINAPI SetClass(REFCLSID clsid) = 0; 388 virtual HRESULT WINAPI Stat(STATPROPSETSTG *pstatpsstg) = 0; 389 }; 390 #else 391 typedef struct IPropertyStorageVtbl { 392 BEGIN_INTERFACE 393 HRESULT (WINAPI *QueryInterface)(IPropertyStorage *This,REFIID riid,void **ppvObject); 394 ULONG (WINAPI *AddRef)(IPropertyStorage *This); 395 ULONG (WINAPI *Release)(IPropertyStorage *This); 396 HRESULT (WINAPI *ReadMultiple)(IPropertyStorage *This,ULONG cpspec,const PROPSPEC rgpspec[],PROPVARIANT rgpropvar[]); 397 HRESULT (WINAPI *WriteMultiple)(IPropertyStorage *This,ULONG cpspec,const PROPSPEC rgpspec[],const PROPVARIANT rgpropvar[],PROPID propidNameFirst); 398 HRESULT (WINAPI *DeleteMultiple)(IPropertyStorage *This,ULONG cpspec,const PROPSPEC rgpspec[]); 399 HRESULT (WINAPI *ReadPropertyNames)(IPropertyStorage *This,ULONG cpropid,const PROPID rgpropid[],LPOLESTR rglpwstrName[]); 400 HRESULT (WINAPI *WritePropertyNames)(IPropertyStorage *This,ULONG cpropid,const PROPID rgpropid[],const LPOLESTR rglpwstrName[]); 401 HRESULT (WINAPI *DeletePropertyNames)(IPropertyStorage *This,ULONG cpropid,const PROPID rgpropid[]); 402 HRESULT (WINAPI *Commit)(IPropertyStorage *This,DWORD grfCommitFlags); 403 HRESULT (WINAPI *Revert)(IPropertyStorage *This); 404 HRESULT (WINAPI *Enum)(IPropertyStorage *This,IEnumSTATPROPSTG **ppenum); 405 HRESULT (WINAPI *SetTimes)(IPropertyStorage *This,const FILETIME *pctime,const FILETIME *patime,const FILETIME *pmtime); 406 HRESULT (WINAPI *SetClass)(IPropertyStorage *This,REFCLSID clsid); 407 HRESULT (WINAPI *Stat)(IPropertyStorage *This,STATPROPSETSTG *pstatpsstg); 408 END_INTERFACE 409 } IPropertyStorageVtbl; 410 struct IPropertyStorage { 411 CONST_VTBL struct IPropertyStorageVtbl *lpVtbl; 412 }; 413 #ifdef COBJMACROS 414 #define IPropertyStorage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 415 #define IPropertyStorage_AddRef(This) (This)->lpVtbl->AddRef(This) 416 #define IPropertyStorage_Release(This) (This)->lpVtbl->Release(This) 417 #define IPropertyStorage_ReadMultiple(This,cpspec,rgpspec,rgpropvar) (This)->lpVtbl->ReadMultiple(This,cpspec,rgpspec,rgpropvar) 418 #define IPropertyStorage_WriteMultiple(This,cpspec,rgpspec,rgpropvar,propidNameFirst) (This)->lpVtbl->WriteMultiple(This,cpspec,rgpspec,rgpropvar,propidNameFirst) 419 #define IPropertyStorage_DeleteMultiple(This,cpspec,rgpspec) (This)->lpVtbl->DeleteMultiple(This,cpspec,rgpspec) 420 #define IPropertyStorage_ReadPropertyNames(This,cpropid,rgpropid,rglpwstrName) (This)->lpVtbl->ReadPropertyNames(This,cpropid,rgpropid,rglpwstrName) 421 #define IPropertyStorage_WritePropertyNames(This,cpropid,rgpropid,rglpwstrName) (This)->lpVtbl->WritePropertyNames(This,cpropid,rgpropid,rglpwstrName) 422 #define IPropertyStorage_DeletePropertyNames(This,cpropid,rgpropid) (This)->lpVtbl->DeletePropertyNames(This,cpropid,rgpropid) 423 #define IPropertyStorage_Commit(This,grfCommitFlags) (This)->lpVtbl->Commit(This,grfCommitFlags) 424 #define IPropertyStorage_Revert(This) (This)->lpVtbl->Revert(This) 425 #define IPropertyStorage_Enum(This,ppenum) (This)->lpVtbl->Enum(This,ppenum) 426 #define IPropertyStorage_SetTimes(This,pctime,patime,pmtime) (This)->lpVtbl->SetTimes(This,pctime,patime,pmtime) 427 #define IPropertyStorage_SetClass(This,clsid) (This)->lpVtbl->SetClass(This,clsid) 428 #define IPropertyStorage_Stat(This,pstatpsstg) (This)->lpVtbl->Stat(This,pstatpsstg) 429 #endif 430 #endif 431 HRESULT WINAPI IPropertyStorage_ReadMultiple_Proxy(IPropertyStorage *This,ULONG cpspec,const PROPSPEC rgpspec[],PROPVARIANT rgpropvar[]); 432 void __RPC_STUB IPropertyStorage_ReadMultiple_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 433 HRESULT WINAPI IPropertyStorage_WriteMultiple_Proxy(IPropertyStorage *This,ULONG cpspec,const PROPSPEC rgpspec[],const PROPVARIANT rgpropvar[],PROPID propidNameFirst); 434 void __RPC_STUB IPropertyStorage_WriteMultiple_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 435 HRESULT WINAPI IPropertyStorage_DeleteMultiple_Proxy(IPropertyStorage *This,ULONG cpspec,const PROPSPEC rgpspec[]); 436 void __RPC_STUB IPropertyStorage_DeleteMultiple_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 437 HRESULT WINAPI IPropertyStorage_ReadPropertyNames_Proxy(IPropertyStorage *This,ULONG cpropid,const PROPID rgpropid[],LPOLESTR rglpwstrName[]); 438 void __RPC_STUB IPropertyStorage_ReadPropertyNames_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 439 HRESULT WINAPI IPropertyStorage_WritePropertyNames_Proxy(IPropertyStorage *This,ULONG cpropid,const PROPID rgpropid[],const LPOLESTR rglpwstrName[]); 440 void __RPC_STUB IPropertyStorage_WritePropertyNames_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 441 HRESULT WINAPI IPropertyStorage_DeletePropertyNames_Proxy(IPropertyStorage *This,ULONG cpropid,const PROPID rgpropid[]); 442 void __RPC_STUB IPropertyStorage_DeletePropertyNames_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 443 HRESULT WINAPI IPropertyStorage_Commit_Proxy(IPropertyStorage *This,DWORD grfCommitFlags); 444 void __RPC_STUB IPropertyStorage_Commit_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 445 HRESULT WINAPI IPropertyStorage_Revert_Proxy(IPropertyStorage *This); 446 void __RPC_STUB IPropertyStorage_Revert_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 447 HRESULT WINAPI IPropertyStorage_Enum_Proxy(IPropertyStorage *This,IEnumSTATPROPSTG **ppenum); 448 void __RPC_STUB IPropertyStorage_Enum_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 449 HRESULT WINAPI IPropertyStorage_SetTimes_Proxy(IPropertyStorage *This,const FILETIME *pctime,const FILETIME *patime,const FILETIME *pmtime); 450 void __RPC_STUB IPropertyStorage_SetTimes_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 451 HRESULT WINAPI IPropertyStorage_SetClass_Proxy(IPropertyStorage *This,REFCLSID clsid); 452 void __RPC_STUB IPropertyStorage_SetClass_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 453 HRESULT WINAPI IPropertyStorage_Stat_Proxy(IPropertyStorage *This,STATPROPSETSTG *pstatpsstg); 454 void __RPC_STUB IPropertyStorage_Stat_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 455 #endif 456 457 #ifndef __IPropertySetStorage_INTERFACE_DEFINED__ 458 #define __IPropertySetStorage_INTERFACE_DEFINED__ 459 typedef IPropertySetStorage *LPPROPERTYSETSTORAGE; 460 461 EXTERN_C const IID IID_IPropertySetStorage; 462 #if defined(__cplusplus) && !defined(CINTERFACE) 463 struct IPropertySetStorage : public IUnknown { 464 public: 465 virtual HRESULT WINAPI Create(REFFMTID rfmtid,const CLSID *pclsid,DWORD grfFlags,DWORD grfMode,IPropertyStorage **ppprstg) = 0; 466 virtual HRESULT WINAPI Open(REFFMTID rfmtid,DWORD grfMode,IPropertyStorage **ppprstg) = 0; 467 virtual HRESULT WINAPI Delete(REFFMTID rfmtid) = 0; 468 virtual HRESULT WINAPI Enum(IEnumSTATPROPSETSTG **ppenum) = 0; 469 }; 470 #else 471 typedef struct IPropertySetStorageVtbl { 472 BEGIN_INTERFACE 473 HRESULT (WINAPI *QueryInterface)(IPropertySetStorage *This,REFIID riid,void **ppvObject); 474 ULONG (WINAPI *AddRef)(IPropertySetStorage *This); 475 ULONG (WINAPI *Release)(IPropertySetStorage *This); 476 HRESULT (WINAPI *Create)(IPropertySetStorage *This,REFFMTID rfmtid,const CLSID *pclsid,DWORD grfFlags,DWORD grfMode,IPropertyStorage **ppprstg); 477 HRESULT (WINAPI *Open)(IPropertySetStorage *This,REFFMTID rfmtid,DWORD grfMode,IPropertyStorage **ppprstg); 478 HRESULT (WINAPI *Delete)(IPropertySetStorage *This,REFFMTID rfmtid); 479 HRESULT (WINAPI *Enum)(IPropertySetStorage *This,IEnumSTATPROPSETSTG **ppenum); 480 END_INTERFACE 481 } IPropertySetStorageVtbl; 482 struct IPropertySetStorage { 483 CONST_VTBL struct IPropertySetStorageVtbl *lpVtbl; 484 }; 485 #ifdef COBJMACROS 486 #define IPropertySetStorage_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 487 #define IPropertySetStorage_AddRef(This) (This)->lpVtbl->AddRef(This) 488 #define IPropertySetStorage_Release(This) (This)->lpVtbl->Release(This) 489 #define IPropertySetStorage_Create(This,rfmtid,pclsid,grfFlags,grfMode,ppprstg) (This)->lpVtbl->Create(This,rfmtid,pclsid,grfFlags,grfMode,ppprstg) 490 #define IPropertySetStorage_Open(This,rfmtid,grfMode,ppprstg) (This)->lpVtbl->Open(This,rfmtid,grfMode,ppprstg) 491 #define IPropertySetStorage_Delete(This,rfmtid) (This)->lpVtbl->Delete(This,rfmtid) 492 #define IPropertySetStorage_Enum(This,ppenum) (This)->lpVtbl->Enum(This,ppenum) 493 #endif 494 #endif 495 HRESULT WINAPI IPropertySetStorage_Create_Proxy(IPropertySetStorage *This,REFFMTID rfmtid,const CLSID *pclsid,DWORD grfFlags,DWORD grfMode,IPropertyStorage **ppprstg); 496 void __RPC_STUB IPropertySetStorage_Create_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 497 HRESULT WINAPI IPropertySetStorage_Open_Proxy(IPropertySetStorage *This,REFFMTID rfmtid,DWORD grfMode,IPropertyStorage **ppprstg); 498 void __RPC_STUB IPropertySetStorage_Open_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 499 HRESULT WINAPI IPropertySetStorage_Delete_Proxy(IPropertySetStorage *This,REFFMTID rfmtid); 500 void __RPC_STUB IPropertySetStorage_Delete_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 501 HRESULT WINAPI IPropertySetStorage_Enum_Proxy(IPropertySetStorage *This,IEnumSTATPROPSETSTG **ppenum); 502 void __RPC_STUB IPropertySetStorage_Enum_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 503 #endif 504 505 #ifndef __IEnumSTATPROPSTG_INTERFACE_DEFINED__ 506 #define __IEnumSTATPROPSTG_INTERFACE_DEFINED__ 507 typedef IEnumSTATPROPSTG *LPENUMSTATPROPSTG; 508 509 EXTERN_C const IID IID_IEnumSTATPROPSTG; 510 #if defined(__cplusplus) && !defined(CINTERFACE) 511 struct IEnumSTATPROPSTG : public IUnknown { 512 public: 513 virtual HRESULT WINAPI Next(ULONG celt,STATPROPSTG *rgelt,ULONG *pceltFetched) = 0; 514 virtual HRESULT WINAPI Skip(ULONG celt) = 0; 515 virtual HRESULT WINAPI Reset(void) = 0; 516 virtual HRESULT WINAPI Clone(IEnumSTATPROPSTG **ppenum) = 0; 517 }; 518 #else 519 typedef struct IEnumSTATPROPSTGVtbl { 520 BEGIN_INTERFACE 521 HRESULT (WINAPI *QueryInterface)(IEnumSTATPROPSTG *This,REFIID riid,void **ppvObject); 522 ULONG (WINAPI *AddRef)(IEnumSTATPROPSTG *This); 523 ULONG (WINAPI *Release)(IEnumSTATPROPSTG *This); 524 HRESULT (WINAPI *Next)(IEnumSTATPROPSTG *This,ULONG celt,STATPROPSTG *rgelt,ULONG *pceltFetched); 525 HRESULT (WINAPI *Skip)(IEnumSTATPROPSTG *This,ULONG celt); 526 HRESULT (WINAPI *Reset)(IEnumSTATPROPSTG *This); 527 HRESULT (WINAPI *Clone)(IEnumSTATPROPSTG *This,IEnumSTATPROPSTG **ppenum); 528 END_INTERFACE 529 } IEnumSTATPROPSTGVtbl; 530 struct IEnumSTATPROPSTG { 531 CONST_VTBL struct IEnumSTATPROPSTGVtbl *lpVtbl; 532 }; 533 #ifdef COBJMACROS 534 #define IEnumSTATPROPSTG_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 535 #define IEnumSTATPROPSTG_AddRef(This) (This)->lpVtbl->AddRef(This) 536 #define IEnumSTATPROPSTG_Release(This) (This)->lpVtbl->Release(This) 537 #define IEnumSTATPROPSTG_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) 538 #define IEnumSTATPROPSTG_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) 539 #define IEnumSTATPROPSTG_Reset(This) (This)->lpVtbl->Reset(This) 540 #define IEnumSTATPROPSTG_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) 541 #endif 542 #endif 543 HRESULT WINAPI IEnumSTATPROPSTG_RemoteNext_Proxy(IEnumSTATPROPSTG *This,ULONG celt,STATPROPSTG *rgelt,ULONG *pceltFetched); 544 void __RPC_STUB IEnumSTATPROPSTG_RemoteNext_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 545 HRESULT WINAPI IEnumSTATPROPSTG_Skip_Proxy(IEnumSTATPROPSTG *This,ULONG celt); 546 void __RPC_STUB IEnumSTATPROPSTG_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 547 HRESULT WINAPI IEnumSTATPROPSTG_Reset_Proxy(IEnumSTATPROPSTG *This); 548 void __RPC_STUB IEnumSTATPROPSTG_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 549 HRESULT WINAPI IEnumSTATPROPSTG_Clone_Proxy(IEnumSTATPROPSTG *This,IEnumSTATPROPSTG **ppenum); 550 void __RPC_STUB IEnumSTATPROPSTG_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 551 #endif 552 553 #ifndef __IEnumSTATPROPSETSTG_INTERFACE_DEFINED__ 554 #define __IEnumSTATPROPSETSTG_INTERFACE_DEFINED__ 555 typedef IEnumSTATPROPSETSTG *LPENUMSTATPROPSETSTG; 556 557 EXTERN_C const IID IID_IEnumSTATPROPSETSTG; 558 #if defined(__cplusplus) && !defined(CINTERFACE) 559 struct IEnumSTATPROPSETSTG : public IUnknown { 560 public: 561 virtual HRESULT WINAPI Next(ULONG celt,STATPROPSETSTG *rgelt,ULONG *pceltFetched) = 0; 562 virtual HRESULT WINAPI Skip(ULONG celt) = 0; 563 virtual HRESULT WINAPI Reset(void) = 0; 564 virtual HRESULT WINAPI Clone(IEnumSTATPROPSETSTG **ppenum) = 0; 565 }; 566 #else 567 typedef struct IEnumSTATPROPSETSTGVtbl { 568 BEGIN_INTERFACE 569 HRESULT (WINAPI *QueryInterface)(IEnumSTATPROPSETSTG *This,REFIID riid,void **ppvObject); 570 ULONG (WINAPI *AddRef)(IEnumSTATPROPSETSTG *This); 571 ULONG (WINAPI *Release)(IEnumSTATPROPSETSTG *This); 572 HRESULT (WINAPI *Next)(IEnumSTATPROPSETSTG *This,ULONG celt,STATPROPSETSTG *rgelt,ULONG *pceltFetched); 573 HRESULT (WINAPI *Skip)(IEnumSTATPROPSETSTG *This,ULONG celt); 574 HRESULT (WINAPI *Reset)(IEnumSTATPROPSETSTG *This); 575 HRESULT (WINAPI *Clone)(IEnumSTATPROPSETSTG *This,IEnumSTATPROPSETSTG **ppenum); 576 END_INTERFACE 577 } IEnumSTATPROPSETSTGVtbl; 578 struct IEnumSTATPROPSETSTG { 579 CONST_VTBL struct IEnumSTATPROPSETSTGVtbl *lpVtbl; 580 }; 581 #ifdef COBJMACROS 582 #define IEnumSTATPROPSETSTG_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) 583 #define IEnumSTATPROPSETSTG_AddRef(This) (This)->lpVtbl->AddRef(This) 584 #define IEnumSTATPROPSETSTG_Release(This) (This)->lpVtbl->Release(This) 585 #define IEnumSTATPROPSETSTG_Next(This,celt,rgelt,pceltFetched) (This)->lpVtbl->Next(This,celt,rgelt,pceltFetched) 586 #define IEnumSTATPROPSETSTG_Skip(This,celt) (This)->lpVtbl->Skip(This,celt) 587 #define IEnumSTATPROPSETSTG_Reset(This) (This)->lpVtbl->Reset(This) 588 #define IEnumSTATPROPSETSTG_Clone(This,ppenum) (This)->lpVtbl->Clone(This,ppenum) 589 #endif 590 #endif 591 HRESULT WINAPI IEnumSTATPROPSETSTG_RemoteNext_Proxy(IEnumSTATPROPSETSTG *This,ULONG celt,STATPROPSETSTG *rgelt,ULONG *pceltFetched); 592 void __RPC_STUB IEnumSTATPROPSETSTG_RemoteNext_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 593 HRESULT WINAPI IEnumSTATPROPSETSTG_Skip_Proxy(IEnumSTATPROPSETSTG *This,ULONG celt); 594 void __RPC_STUB IEnumSTATPROPSETSTG_Skip_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 595 HRESULT WINAPI IEnumSTATPROPSETSTG_Reset_Proxy(IEnumSTATPROPSETSTG *This); 596 void __RPC_STUB IEnumSTATPROPSETSTG_Reset_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 597 HRESULT WINAPI IEnumSTATPROPSETSTG_Clone_Proxy(IEnumSTATPROPSETSTG *This,IEnumSTATPROPSETSTG **ppenum); 598 void __RPC_STUB IEnumSTATPROPSETSTG_Clone_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase); 599 #endif 600 601 typedef IPropertyStorage *LPPROPERTYSTORAGE; 602 603 WINOLEAPI PropVariantCopy (PROPVARIANT *pvarDest,const PROPVARIANT *pvarSrc); 604 WINOLEAPI PropVariantClear (PROPVARIANT *pvar); 605 WINOLEAPI FreePropVariantArray (ULONG cVariants,PROPVARIANT *rgvars); 606 607 #define _PROPVARIANTINIT_DEFINED_ 608 #ifdef __cplusplus 609 static inline void PropVariantInit(PROPVARIANT *pvar) { memset (pvar,0,sizeof(PROPVARIANT)); } 610 #else 611 #define PropVariantInit(pvar) memset((pvar),0,sizeof(PROPVARIANT)) 612 #endif 613 614 #ifndef _STGCREATEPROPSTG_DEFINED_ 615 WINOLEAPI StgCreatePropStg(IUnknown *pUnk,REFFMTID fmtid,const CLSID *pclsid,DWORD grfFlags,DWORD dwReserved,IPropertyStorage **ppPropStg); 616 WINOLEAPI StgOpenPropStg(IUnknown *pUnk,REFFMTID fmtid,DWORD grfFlags,DWORD dwReserved,IPropertyStorage **ppPropStg); 617 WINOLEAPI StgCreatePropSetStg(IStorage *pStorage,DWORD dwReserved,IPropertySetStorage **ppPropSetStg); 618 619 #define CCH_MAX_PROPSTG_NAME 31 620 WINOLEAPI FmtIdToPropStgName(const FMTID *pfmtid,LPOLESTR oszName); 621 WINOLEAPI PropStgNameToFmtId(const LPOLESTR oszName,FMTID *pfmtid); 622 #endif 623 624 extern RPC_IF_HANDLE __MIDL_itf_propidl_0120_v0_0_c_ifspec; 625 extern RPC_IF_HANDLE __MIDL_itf_propidl_0120_v0_0_s_ifspec; 626 627 ULONG __RPC_API BSTR_UserSize(ULONG *,ULONG,BSTR *); 628 unsigned char *__RPC_API BSTR_UserMarshal(ULONG *,unsigned char *,BSTR *); 629 unsigned char *__RPC_API BSTR_UserUnmarshal(ULONG *,unsigned char *,BSTR *); 630 void __RPC_API BSTR_UserFree(ULONG *,BSTR *); 631 ULONG __RPC_API LPSAFEARRAY_UserSize(ULONG *,ULONG,LPSAFEARRAY *); 632 unsigned char *__RPC_API LPSAFEARRAY_UserMarshal(ULONG *,unsigned char *,LPSAFEARRAY *); 633 unsigned char *__RPC_API LPSAFEARRAY_UserUnmarshal(ULONG *,unsigned char *,LPSAFEARRAY *); 634 void __RPC_API LPSAFEARRAY_UserFree(ULONG *,LPSAFEARRAY *); 635 636 HRESULT WINAPI IEnumSTATPROPSTG_Next_Proxy(IEnumSTATPROPSTG *This,ULONG celt,STATPROPSTG *rgelt,ULONG *pceltFetched); 637 HRESULT WINAPI IEnumSTATPROPSTG_Next_Stub(IEnumSTATPROPSTG *This,ULONG celt,STATPROPSTG *rgelt,ULONG *pceltFetched); 638 HRESULT WINAPI IEnumSTATPROPSETSTG_Next_Proxy(IEnumSTATPROPSETSTG *This,ULONG celt,STATPROPSETSTG *rgelt,ULONG *pceltFetched); 639 HRESULT WINAPI IEnumSTATPROPSETSTG_Next_Stub(IEnumSTATPROPSETSTG *This,ULONG celt,STATPROPSETSTG *rgelt,ULONG *pceltFetched); 640 /* Begin additional prototypes for all interfaces */ 641 642 643 /* End additional prototypes */ 644 645 #ifdef __cplusplus 646 } 647 #endif 648 649 #endif /* __propidl_h__ */ 650