propsys.h (116683B)
1 2 3 /* this ALWAYS GENERATED file contains the definitions for the interfaces */ 4 5 6 /* File created by MIDL compiler version 7.00.0499 */ 7 /* Compiler settings for propsys.idl: 8 Oicf, W1, Zp8, env=Win32 (32b run) 9 protocol : dce , ms_ext, c_ext, robust 10 error checks: allocation ref bounds_check enum stub_data 11 VC __declspec() decoration level: 12 __declspec(uuid()), __declspec(selectany), __declspec(novtable) 13 DECLSPEC_UUID(), MIDL_INTERFACE() 14 */ 15 //@@MIDL_FILE_HEADING( ) 16 17 #pragma warning( disable: 4049 ) /* more than 64k source lines */ 18 19 20 /* verify that the <rpcndr.h> version is high enough to compile this file*/ 21 #ifndef __REQUIRED_RPCNDR_H_VERSION__ 22 #define __REQUIRED_RPCNDR_H_VERSION__ 475 23 #endif 24 25 /* verify that the <rpcsal.h> version is high enough to compile this file*/ 26 #ifndef __REQUIRED_RPCSAL_H_VERSION__ 27 #define __REQUIRED_RPCSAL_H_VERSION__ 100 28 #endif 29 30 #include "rpc.h" 31 #include "rpcndr.h" 32 33 #ifndef __RPCNDR_H_VERSION__ 34 #error this stub requires an updated version of <rpcndr.h> 35 #endif // __RPCNDR_H_VERSION__ 36 37 #ifndef COM_NO_WINDOWS_H 38 #include "windows.h" 39 #include "ole2.h" 40 #endif /*COM_NO_WINDOWS_H*/ 41 42 #ifndef __propsys_h__ 43 #define __propsys_h__ 44 45 #if defined(_MSC_VER) && (_MSC_VER >= 1020) 46 #pragma once 47 #endif 48 49 /* Forward Declarations */ 50 51 #ifndef __IInitializeWithFile_FWD_DEFINED__ 52 #define __IInitializeWithFile_FWD_DEFINED__ 53 typedef interface IInitializeWithFile IInitializeWithFile; 54 #endif /* __IInitializeWithFile_FWD_DEFINED__ */ 55 56 57 #ifndef __IInitializeWithStream_FWD_DEFINED__ 58 #define __IInitializeWithStream_FWD_DEFINED__ 59 typedef interface IInitializeWithStream IInitializeWithStream; 60 #endif /* __IInitializeWithStream_FWD_DEFINED__ */ 61 62 63 #ifndef __IPropertyStore_FWD_DEFINED__ 64 #define __IPropertyStore_FWD_DEFINED__ 65 typedef interface IPropertyStore IPropertyStore; 66 #endif /* __IPropertyStore_FWD_DEFINED__ */ 67 68 69 #ifndef __INamedPropertyStore_FWD_DEFINED__ 70 #define __INamedPropertyStore_FWD_DEFINED__ 71 typedef interface INamedPropertyStore INamedPropertyStore; 72 #endif /* __INamedPropertyStore_FWD_DEFINED__ */ 73 74 75 #ifndef __IObjectWithPropertyKey_FWD_DEFINED__ 76 #define __IObjectWithPropertyKey_FWD_DEFINED__ 77 typedef interface IObjectWithPropertyKey IObjectWithPropertyKey; 78 #endif /* __IObjectWithPropertyKey_FWD_DEFINED__ */ 79 80 81 #ifndef __IPropertyChange_FWD_DEFINED__ 82 #define __IPropertyChange_FWD_DEFINED__ 83 typedef interface IPropertyChange IPropertyChange; 84 #endif /* __IPropertyChange_FWD_DEFINED__ */ 85 86 87 #ifndef __IPropertyChangeArray_FWD_DEFINED__ 88 #define __IPropertyChangeArray_FWD_DEFINED__ 89 typedef interface IPropertyChangeArray IPropertyChangeArray; 90 #endif /* __IPropertyChangeArray_FWD_DEFINED__ */ 91 92 93 #ifndef __IPropertyStoreCapabilities_FWD_DEFINED__ 94 #define __IPropertyStoreCapabilities_FWD_DEFINED__ 95 typedef interface IPropertyStoreCapabilities IPropertyStoreCapabilities; 96 #endif /* __IPropertyStoreCapabilities_FWD_DEFINED__ */ 97 98 99 #ifndef __IPropertyStoreCache_FWD_DEFINED__ 100 #define __IPropertyStoreCache_FWD_DEFINED__ 101 typedef interface IPropertyStoreCache IPropertyStoreCache; 102 #endif /* __IPropertyStoreCache_FWD_DEFINED__ */ 103 104 105 #ifndef __IPropertyEnumType_FWD_DEFINED__ 106 #define __IPropertyEnumType_FWD_DEFINED__ 107 typedef interface IPropertyEnumType IPropertyEnumType; 108 #endif /* __IPropertyEnumType_FWD_DEFINED__ */ 109 110 111 #ifndef __IPropertyEnumTypeList_FWD_DEFINED__ 112 #define __IPropertyEnumTypeList_FWD_DEFINED__ 113 typedef interface IPropertyEnumTypeList IPropertyEnumTypeList; 114 #endif /* __IPropertyEnumTypeList_FWD_DEFINED__ */ 115 116 117 #ifndef __IPropertyDescription_FWD_DEFINED__ 118 #define __IPropertyDescription_FWD_DEFINED__ 119 typedef interface IPropertyDescription IPropertyDescription; 120 #endif /* __IPropertyDescription_FWD_DEFINED__ */ 121 122 123 #ifndef __IPropertyDescriptionAliasInfo_FWD_DEFINED__ 124 #define __IPropertyDescriptionAliasInfo_FWD_DEFINED__ 125 typedef interface IPropertyDescriptionAliasInfo IPropertyDescriptionAliasInfo; 126 #endif /* __IPropertyDescriptionAliasInfo_FWD_DEFINED__ */ 127 128 129 #ifndef __IPropertyDescriptionSearchInfo_FWD_DEFINED__ 130 #define __IPropertyDescriptionSearchInfo_FWD_DEFINED__ 131 typedef interface IPropertyDescriptionSearchInfo IPropertyDescriptionSearchInfo; 132 #endif /* __IPropertyDescriptionSearchInfo_FWD_DEFINED__ */ 133 134 135 #ifndef __IPropertySystem_FWD_DEFINED__ 136 #define __IPropertySystem_FWD_DEFINED__ 137 typedef interface IPropertySystem IPropertySystem; 138 #endif /* __IPropertySystem_FWD_DEFINED__ */ 139 140 141 #ifndef __IPropertyDescriptionList_FWD_DEFINED__ 142 #define __IPropertyDescriptionList_FWD_DEFINED__ 143 typedef interface IPropertyDescriptionList IPropertyDescriptionList; 144 #endif /* __IPropertyDescriptionList_FWD_DEFINED__ */ 145 146 147 #ifndef __IPropertyStoreFactory_FWD_DEFINED__ 148 #define __IPropertyStoreFactory_FWD_DEFINED__ 149 typedef interface IPropertyStoreFactory IPropertyStoreFactory; 150 #endif /* __IPropertyStoreFactory_FWD_DEFINED__ */ 151 152 153 #ifndef __IDelayedPropertyStoreFactory_FWD_DEFINED__ 154 #define __IDelayedPropertyStoreFactory_FWD_DEFINED__ 155 typedef interface IDelayedPropertyStoreFactory IDelayedPropertyStoreFactory; 156 #endif /* __IDelayedPropertyStoreFactory_FWD_DEFINED__ */ 157 158 159 #ifndef __IPersistSerializedPropStorage_FWD_DEFINED__ 160 #define __IPersistSerializedPropStorage_FWD_DEFINED__ 161 typedef interface IPersistSerializedPropStorage IPersistSerializedPropStorage; 162 #endif /* __IPersistSerializedPropStorage_FWD_DEFINED__ */ 163 164 165 #ifndef __IPropertySystemChangeNotify_FWD_DEFINED__ 166 #define __IPropertySystemChangeNotify_FWD_DEFINED__ 167 typedef interface IPropertySystemChangeNotify IPropertySystemChangeNotify; 168 #endif /* __IPropertySystemChangeNotify_FWD_DEFINED__ */ 169 170 171 #ifndef __ICreateObject_FWD_DEFINED__ 172 #define __ICreateObject_FWD_DEFINED__ 173 typedef interface ICreateObject ICreateObject; 174 #endif /* __ICreateObject_FWD_DEFINED__ */ 175 176 177 #ifndef __InMemoryPropertyStore_FWD_DEFINED__ 178 #define __InMemoryPropertyStore_FWD_DEFINED__ 179 180 #ifdef __cplusplus 181 typedef class InMemoryPropertyStore InMemoryPropertyStore; 182 #else 183 typedef struct InMemoryPropertyStore InMemoryPropertyStore; 184 #endif /* __cplusplus */ 185 186 #endif /* __InMemoryPropertyStore_FWD_DEFINED__ */ 187 188 189 #ifndef __PropertySystem_FWD_DEFINED__ 190 #define __PropertySystem_FWD_DEFINED__ 191 192 #ifdef __cplusplus 193 typedef class PropertySystem PropertySystem; 194 #else 195 typedef struct PropertySystem PropertySystem; 196 #endif /* __cplusplus */ 197 198 #endif /* __PropertySystem_FWD_DEFINED__ */ 199 200 201 /* header files for imported files */ 202 #include "objidl.h" 203 #include "oleidl.h" 204 #include "ocidl.h" 205 #include "shtypes.h" 206 #include "structuredquery.h" 207 208 #ifdef __cplusplus 209 extern "C"{ 210 #endif 211 212 213 /* interface __MIDL_itf_propsys_0000_0000 */ 214 /* [local] */ 215 216 #ifndef PSSTDAPI 217 #if defined(_PROPSYS_) 218 #define PSSTDAPI STDAPI 219 #define PSSTDAPI_(type) STDAPI_(type) 220 #else 221 #define PSSTDAPI EXTERN_C DECLSPEC_IMPORT HRESULT STDAPICALLTYPE 222 #define PSSTDAPI_(type) EXTERN_C DECLSPEC_IMPORT type STDAPICALLTYPE 223 #endif 224 #endif // PSSTDAPI 225 #if 0 226 typedef PROPERTYKEY *REFPROPERTYKEY; 227 228 #endif // 0 229 #include <propkeydef.h> 230 231 232 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0000_v0_0_c_ifspec; 233 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0000_v0_0_s_ifspec; 234 235 #ifndef __IInitializeWithFile_INTERFACE_DEFINED__ 236 #define __IInitializeWithFile_INTERFACE_DEFINED__ 237 238 /* interface IInitializeWithFile */ 239 /* [unique][object][uuid] */ 240 241 242 EXTERN_C const IID IID_IInitializeWithFile; 243 244 #if defined(__cplusplus) && !defined(CINTERFACE) 245 246 MIDL_INTERFACE("b7d14566-0509-4cce-a71f-0a554233bd9b") 247 IInitializeWithFile : public IUnknown 248 { 249 public: 250 virtual HRESULT STDMETHODCALLTYPE Initialize( 251 /* [string][in] */ __RPC__in LPCWSTR pszFilePath, 252 /* [in] */ DWORD grfMode) = 0; 253 254 }; 255 256 #else /* C style interface */ 257 258 typedef struct IInitializeWithFileVtbl 259 { 260 BEGIN_INTERFACE 261 262 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 263 IInitializeWithFile * This, 264 /* [in] */ __RPC__in REFIID riid, 265 /* [iid_is][out] */ 266 __RPC__deref_out void **ppvObject); 267 268 ULONG ( STDMETHODCALLTYPE *AddRef )( 269 IInitializeWithFile * This); 270 271 ULONG ( STDMETHODCALLTYPE *Release )( 272 IInitializeWithFile * This); 273 274 HRESULT ( STDMETHODCALLTYPE *Initialize )( 275 IInitializeWithFile * This, 276 /* [string][in] */ __RPC__in LPCWSTR pszFilePath, 277 /* [in] */ DWORD grfMode); 278 279 END_INTERFACE 280 } IInitializeWithFileVtbl; 281 282 interface IInitializeWithFile 283 { 284 CONST_VTBL struct IInitializeWithFileVtbl *lpVtbl; 285 }; 286 287 288 289 #ifdef COBJMACROS 290 291 292 #define IInitializeWithFile_QueryInterface(This,riid,ppvObject) \ 293 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 294 295 #define IInitializeWithFile_AddRef(This) \ 296 ( (This)->lpVtbl -> AddRef(This) ) 297 298 #define IInitializeWithFile_Release(This) \ 299 ( (This)->lpVtbl -> Release(This) ) 300 301 302 #define IInitializeWithFile_Initialize(This,pszFilePath,grfMode) \ 303 ( (This)->lpVtbl -> Initialize(This,pszFilePath,grfMode) ) 304 305 #endif /* COBJMACROS */ 306 307 308 #endif /* C style interface */ 309 310 311 312 313 #endif /* __IInitializeWithFile_INTERFACE_DEFINED__ */ 314 315 316 #ifndef __IInitializeWithStream_INTERFACE_DEFINED__ 317 #define __IInitializeWithStream_INTERFACE_DEFINED__ 318 319 /* interface IInitializeWithStream */ 320 /* [unique][object][uuid] */ 321 322 323 EXTERN_C const IID IID_IInitializeWithStream; 324 325 #if defined(__cplusplus) && !defined(CINTERFACE) 326 327 MIDL_INTERFACE("b824b49d-22ac-4161-ac8a-9916e8fa3f7f") 328 IInitializeWithStream : public IUnknown 329 { 330 public: 331 virtual /* [local] */ HRESULT STDMETHODCALLTYPE Initialize( 332 /* [in] */ IStream *pstream, 333 /* [in] */ DWORD grfMode) = 0; 334 335 }; 336 337 #else /* C style interface */ 338 339 typedef struct IInitializeWithStreamVtbl 340 { 341 BEGIN_INTERFACE 342 343 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 344 IInitializeWithStream * This, 345 /* [in] */ __RPC__in REFIID riid, 346 /* [iid_is][out] */ 347 __RPC__deref_out void **ppvObject); 348 349 ULONG ( STDMETHODCALLTYPE *AddRef )( 350 IInitializeWithStream * This); 351 352 ULONG ( STDMETHODCALLTYPE *Release )( 353 IInitializeWithStream * This); 354 355 /* [local] */ HRESULT ( STDMETHODCALLTYPE *Initialize )( 356 IInitializeWithStream * This, 357 /* [in] */ IStream *pstream, 358 /* [in] */ DWORD grfMode); 359 360 END_INTERFACE 361 } IInitializeWithStreamVtbl; 362 363 interface IInitializeWithStream 364 { 365 CONST_VTBL struct IInitializeWithStreamVtbl *lpVtbl; 366 }; 367 368 369 370 #ifdef COBJMACROS 371 372 373 #define IInitializeWithStream_QueryInterface(This,riid,ppvObject) \ 374 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 375 376 #define IInitializeWithStream_AddRef(This) \ 377 ( (This)->lpVtbl -> AddRef(This) ) 378 379 #define IInitializeWithStream_Release(This) \ 380 ( (This)->lpVtbl -> Release(This) ) 381 382 383 #define IInitializeWithStream_Initialize(This,pstream,grfMode) \ 384 ( (This)->lpVtbl -> Initialize(This,pstream,grfMode) ) 385 386 #endif /* COBJMACROS */ 387 388 389 #endif /* C style interface */ 390 391 392 393 /* [call_as] */ HRESULT STDMETHODCALLTYPE IInitializeWithStream_RemoteInitialize_Proxy( 394 IInitializeWithStream * This, 395 /* [in] */ __RPC__in_opt IStream *pstream, 396 /* [in] */ DWORD grfMode); 397 398 399 void __RPC_STUB IInitializeWithStream_RemoteInitialize_Stub( 400 IRpcStubBuffer *This, 401 IRpcChannelBuffer *_pRpcChannelBuffer, 402 PRPC_MESSAGE _pRpcMessage, 403 DWORD *_pdwStubPhase); 404 405 406 407 #endif /* __IInitializeWithStream_INTERFACE_DEFINED__ */ 408 409 410 #ifndef __IPropertyStore_INTERFACE_DEFINED__ 411 #define __IPropertyStore_INTERFACE_DEFINED__ 412 413 /* interface IPropertyStore */ 414 /* [unique][object][helpstring][uuid] */ 415 416 417 EXTERN_C const IID IID_IPropertyStore; 418 419 #if defined(__cplusplus) && !defined(CINTERFACE) 420 421 MIDL_INTERFACE("886d8eeb-8cf2-4446-8d02-cdba1dbdcf99") 422 IPropertyStore : public IUnknown 423 { 424 public: 425 virtual HRESULT STDMETHODCALLTYPE GetCount( 426 /* [out] */ __RPC__out DWORD *cProps) = 0; 427 428 virtual HRESULT STDMETHODCALLTYPE GetAt( 429 /* [in] */ DWORD iProp, 430 /* [out] */ __RPC__out PROPERTYKEY *pkey) = 0; 431 432 virtual HRESULT STDMETHODCALLTYPE GetValue( 433 /* [in] */ __RPC__in REFPROPERTYKEY key, 434 /* [out] */ __RPC__out PROPVARIANT *pv) = 0; 435 436 virtual HRESULT STDMETHODCALLTYPE SetValue( 437 /* [in] */ __RPC__in REFPROPERTYKEY key, 438 /* [in] */ __RPC__in REFPROPVARIANT propvar) = 0; 439 440 virtual HRESULT STDMETHODCALLTYPE Commit( void) = 0; 441 442 }; 443 444 #else /* C style interface */ 445 446 typedef struct IPropertyStoreVtbl 447 { 448 BEGIN_INTERFACE 449 450 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 451 IPropertyStore * This, 452 /* [in] */ __RPC__in REFIID riid, 453 /* [iid_is][out] */ 454 __RPC__deref_out void **ppvObject); 455 456 ULONG ( STDMETHODCALLTYPE *AddRef )( 457 IPropertyStore * This); 458 459 ULONG ( STDMETHODCALLTYPE *Release )( 460 IPropertyStore * This); 461 462 HRESULT ( STDMETHODCALLTYPE *GetCount )( 463 IPropertyStore * This, 464 /* [out] */ __RPC__out DWORD *cProps); 465 466 HRESULT ( STDMETHODCALLTYPE *GetAt )( 467 IPropertyStore * This, 468 /* [in] */ DWORD iProp, 469 /* [out] */ __RPC__out PROPERTYKEY *pkey); 470 471 HRESULT ( STDMETHODCALLTYPE *GetValue )( 472 IPropertyStore * This, 473 /* [in] */ __RPC__in REFPROPERTYKEY key, 474 /* [out] */ __RPC__out PROPVARIANT *pv); 475 476 HRESULT ( STDMETHODCALLTYPE *SetValue )( 477 IPropertyStore * This, 478 /* [in] */ __RPC__in REFPROPERTYKEY key, 479 /* [in] */ __RPC__in REFPROPVARIANT propvar); 480 481 HRESULT ( STDMETHODCALLTYPE *Commit )( 482 IPropertyStore * This); 483 484 END_INTERFACE 485 } IPropertyStoreVtbl; 486 487 interface IPropertyStore 488 { 489 CONST_VTBL struct IPropertyStoreVtbl *lpVtbl; 490 }; 491 492 493 494 #ifdef COBJMACROS 495 496 497 #define IPropertyStore_QueryInterface(This,riid,ppvObject) \ 498 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 499 500 #define IPropertyStore_AddRef(This) \ 501 ( (This)->lpVtbl -> AddRef(This) ) 502 503 #define IPropertyStore_Release(This) \ 504 ( (This)->lpVtbl -> Release(This) ) 505 506 507 #define IPropertyStore_GetCount(This,cProps) \ 508 ( (This)->lpVtbl -> GetCount(This,cProps) ) 509 510 #define IPropertyStore_GetAt(This,iProp,pkey) \ 511 ( (This)->lpVtbl -> GetAt(This,iProp,pkey) ) 512 513 #define IPropertyStore_GetValue(This,key,pv) \ 514 ( (This)->lpVtbl -> GetValue(This,key,pv) ) 515 516 #define IPropertyStore_SetValue(This,key,propvar) \ 517 ( (This)->lpVtbl -> SetValue(This,key,propvar) ) 518 519 #define IPropertyStore_Commit(This) \ 520 ( (This)->lpVtbl -> Commit(This) ) 521 522 #endif /* COBJMACROS */ 523 524 525 #endif /* C style interface */ 526 527 528 529 530 #endif /* __IPropertyStore_INTERFACE_DEFINED__ */ 531 532 533 /* interface __MIDL_itf_propsys_0000_0003 */ 534 /* [local] */ 535 536 typedef /* [unique] */ __RPC_unique_pointer IPropertyStore *LPPROPERTYSTORE; 537 538 539 540 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0003_v0_0_c_ifspec; 541 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0003_v0_0_s_ifspec; 542 543 #ifndef __INamedPropertyStore_INTERFACE_DEFINED__ 544 #define __INamedPropertyStore_INTERFACE_DEFINED__ 545 546 /* interface INamedPropertyStore */ 547 /* [unique][object][uuid] */ 548 549 550 EXTERN_C const IID IID_INamedPropertyStore; 551 552 #if defined(__cplusplus) && !defined(CINTERFACE) 553 554 MIDL_INTERFACE("71604b0f-97b0-4764-8577-2f13e98a1422") 555 INamedPropertyStore : public IUnknown 556 { 557 public: 558 virtual HRESULT STDMETHODCALLTYPE GetNamedValue( 559 /* [string][in] */ __RPC__in LPCWSTR pszName, 560 /* [out] */ __RPC__out PROPVARIANT *ppropvar) = 0; 561 562 virtual HRESULT STDMETHODCALLTYPE SetNamedValue( 563 /* [string][in] */ __RPC__in LPCWSTR pszName, 564 /* [in] */ __RPC__in REFPROPVARIANT propvar) = 0; 565 566 virtual HRESULT STDMETHODCALLTYPE GetNameCount( 567 /* [out] */ __RPC__out DWORD *pdwCount) = 0; 568 569 virtual HRESULT STDMETHODCALLTYPE GetNameAt( 570 /* [in] */ DWORD iProp, 571 /* [out] */ __RPC__deref_out_opt BSTR *pbstrName) = 0; 572 573 }; 574 575 #else /* C style interface */ 576 577 typedef struct INamedPropertyStoreVtbl 578 { 579 BEGIN_INTERFACE 580 581 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 582 INamedPropertyStore * This, 583 /* [in] */ __RPC__in REFIID riid, 584 /* [iid_is][out] */ 585 __RPC__deref_out void **ppvObject); 586 587 ULONG ( STDMETHODCALLTYPE *AddRef )( 588 INamedPropertyStore * This); 589 590 ULONG ( STDMETHODCALLTYPE *Release )( 591 INamedPropertyStore * This); 592 593 HRESULT ( STDMETHODCALLTYPE *GetNamedValue )( 594 INamedPropertyStore * This, 595 /* [string][in] */ __RPC__in LPCWSTR pszName, 596 /* [out] */ __RPC__out PROPVARIANT *ppropvar); 597 598 HRESULT ( STDMETHODCALLTYPE *SetNamedValue )( 599 INamedPropertyStore * This, 600 /* [string][in] */ __RPC__in LPCWSTR pszName, 601 /* [in] */ __RPC__in REFPROPVARIANT propvar); 602 603 HRESULT ( STDMETHODCALLTYPE *GetNameCount )( 604 INamedPropertyStore * This, 605 /* [out] */ __RPC__out DWORD *pdwCount); 606 607 HRESULT ( STDMETHODCALLTYPE *GetNameAt )( 608 INamedPropertyStore * This, 609 /* [in] */ DWORD iProp, 610 /* [out] */ __RPC__deref_out_opt BSTR *pbstrName); 611 612 END_INTERFACE 613 } INamedPropertyStoreVtbl; 614 615 interface INamedPropertyStore 616 { 617 CONST_VTBL struct INamedPropertyStoreVtbl *lpVtbl; 618 }; 619 620 621 622 #ifdef COBJMACROS 623 624 625 #define INamedPropertyStore_QueryInterface(This,riid,ppvObject) \ 626 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 627 628 #define INamedPropertyStore_AddRef(This) \ 629 ( (This)->lpVtbl -> AddRef(This) ) 630 631 #define INamedPropertyStore_Release(This) \ 632 ( (This)->lpVtbl -> Release(This) ) 633 634 635 #define INamedPropertyStore_GetNamedValue(This,pszName,ppropvar) \ 636 ( (This)->lpVtbl -> GetNamedValue(This,pszName,ppropvar) ) 637 638 #define INamedPropertyStore_SetNamedValue(This,pszName,propvar) \ 639 ( (This)->lpVtbl -> SetNamedValue(This,pszName,propvar) ) 640 641 #define INamedPropertyStore_GetNameCount(This,pdwCount) \ 642 ( (This)->lpVtbl -> GetNameCount(This,pdwCount) ) 643 644 #define INamedPropertyStore_GetNameAt(This,iProp,pbstrName) \ 645 ( (This)->lpVtbl -> GetNameAt(This,iProp,pbstrName) ) 646 647 #endif /* COBJMACROS */ 648 649 650 #endif /* C style interface */ 651 652 653 654 655 #endif /* __INamedPropertyStore_INTERFACE_DEFINED__ */ 656 657 658 /* interface __MIDL_itf_propsys_0000_0004 */ 659 /* [local] */ 660 661 /* [v1_enum] */ 662 enum tagGETPROPERTYSTOREFLAGS 663 { GPS_DEFAULT = 0, 664 GPS_HANDLERPROPERTIESONLY = 0x1, 665 GPS_READWRITE = 0x2, 666 GPS_TEMPORARY = 0x4, 667 GPS_FASTPROPERTIESONLY = 0x8, 668 GPS_OPENSLOWITEM = 0x10, 669 GPS_DELAYCREATION = 0x20, 670 GPS_BESTEFFORT = 0x40, 671 GPS_MASK_VALID = 0x7f 672 } ; 673 typedef int GETPROPERTYSTOREFLAGS; 674 675 676 677 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0004_v0_0_c_ifspec; 678 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0004_v0_0_s_ifspec; 679 680 #ifndef __IObjectWithPropertyKey_INTERFACE_DEFINED__ 681 #define __IObjectWithPropertyKey_INTERFACE_DEFINED__ 682 683 /* interface IObjectWithPropertyKey */ 684 /* [uuid][object] */ 685 686 687 EXTERN_C const IID IID_IObjectWithPropertyKey; 688 689 #if defined(__cplusplus) && !defined(CINTERFACE) 690 691 MIDL_INTERFACE("fc0ca0a7-c316-4fd2-9031-3e628e6d4f23") 692 IObjectWithPropertyKey : public IUnknown 693 { 694 public: 695 virtual HRESULT STDMETHODCALLTYPE SetPropertyKey( 696 /* [in] */ __RPC__in REFPROPERTYKEY key) = 0; 697 698 virtual HRESULT STDMETHODCALLTYPE GetPropertyKey( 699 /* [out] */ __RPC__out PROPERTYKEY *pkey) = 0; 700 701 }; 702 703 #else /* C style interface */ 704 705 typedef struct IObjectWithPropertyKeyVtbl 706 { 707 BEGIN_INTERFACE 708 709 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 710 IObjectWithPropertyKey * This, 711 /* [in] */ __RPC__in REFIID riid, 712 /* [iid_is][out] */ 713 __RPC__deref_out void **ppvObject); 714 715 ULONG ( STDMETHODCALLTYPE *AddRef )( 716 IObjectWithPropertyKey * This); 717 718 ULONG ( STDMETHODCALLTYPE *Release )( 719 IObjectWithPropertyKey * This); 720 721 HRESULT ( STDMETHODCALLTYPE *SetPropertyKey )( 722 IObjectWithPropertyKey * This, 723 /* [in] */ __RPC__in REFPROPERTYKEY key); 724 725 HRESULT ( STDMETHODCALLTYPE *GetPropertyKey )( 726 IObjectWithPropertyKey * This, 727 /* [out] */ __RPC__out PROPERTYKEY *pkey); 728 729 END_INTERFACE 730 } IObjectWithPropertyKeyVtbl; 731 732 interface IObjectWithPropertyKey 733 { 734 CONST_VTBL struct IObjectWithPropertyKeyVtbl *lpVtbl; 735 }; 736 737 738 739 #ifdef COBJMACROS 740 741 742 #define IObjectWithPropertyKey_QueryInterface(This,riid,ppvObject) \ 743 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 744 745 #define IObjectWithPropertyKey_AddRef(This) \ 746 ( (This)->lpVtbl -> AddRef(This) ) 747 748 #define IObjectWithPropertyKey_Release(This) \ 749 ( (This)->lpVtbl -> Release(This) ) 750 751 752 #define IObjectWithPropertyKey_SetPropertyKey(This,key) \ 753 ( (This)->lpVtbl -> SetPropertyKey(This,key) ) 754 755 #define IObjectWithPropertyKey_GetPropertyKey(This,pkey) \ 756 ( (This)->lpVtbl -> GetPropertyKey(This,pkey) ) 757 758 #endif /* COBJMACROS */ 759 760 761 #endif /* C style interface */ 762 763 764 765 766 #endif /* __IObjectWithPropertyKey_INTERFACE_DEFINED__ */ 767 768 769 /* interface __MIDL_itf_propsys_0000_0005 */ 770 /* [local] */ 771 772 typedef /* [v1_enum] */ 773 enum tagPKA_FLAGS 774 { PKA_SET = 0, 775 PKA_APPEND = ( PKA_SET + 1 ) , 776 PKA_DELETE = ( PKA_APPEND + 1 ) 777 } PKA_FLAGS; 778 779 780 781 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0005_v0_0_c_ifspec; 782 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0005_v0_0_s_ifspec; 783 784 #ifndef __IPropertyChange_INTERFACE_DEFINED__ 785 #define __IPropertyChange_INTERFACE_DEFINED__ 786 787 /* interface IPropertyChange */ 788 /* [unique][object][uuid] */ 789 790 791 EXTERN_C const IID IID_IPropertyChange; 792 793 #if defined(__cplusplus) && !defined(CINTERFACE) 794 795 MIDL_INTERFACE("f917bc8a-1bba-4478-a245-1bde03eb9431") 796 IPropertyChange : public IObjectWithPropertyKey 797 { 798 public: 799 virtual HRESULT STDMETHODCALLTYPE ApplyToPropVariant( 800 /* [in] */ __RPC__in REFPROPVARIANT propvarIn, 801 /* [out] */ __RPC__out PROPVARIANT *ppropvarOut) = 0; 802 803 }; 804 805 #else /* C style interface */ 806 807 typedef struct IPropertyChangeVtbl 808 { 809 BEGIN_INTERFACE 810 811 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 812 IPropertyChange * This, 813 /* [in] */ __RPC__in REFIID riid, 814 /* [iid_is][out] */ 815 __RPC__deref_out void **ppvObject); 816 817 ULONG ( STDMETHODCALLTYPE *AddRef )( 818 IPropertyChange * This); 819 820 ULONG ( STDMETHODCALLTYPE *Release )( 821 IPropertyChange * This); 822 823 HRESULT ( STDMETHODCALLTYPE *SetPropertyKey )( 824 IPropertyChange * This, 825 /* [in] */ __RPC__in REFPROPERTYKEY key); 826 827 HRESULT ( STDMETHODCALLTYPE *GetPropertyKey )( 828 IPropertyChange * This, 829 /* [out] */ __RPC__out PROPERTYKEY *pkey); 830 831 HRESULT ( STDMETHODCALLTYPE *ApplyToPropVariant )( 832 IPropertyChange * This, 833 /* [in] */ __RPC__in REFPROPVARIANT propvarIn, 834 /* [out] */ __RPC__out PROPVARIANT *ppropvarOut); 835 836 END_INTERFACE 837 } IPropertyChangeVtbl; 838 839 interface IPropertyChange 840 { 841 CONST_VTBL struct IPropertyChangeVtbl *lpVtbl; 842 }; 843 844 845 846 #ifdef COBJMACROS 847 848 849 #define IPropertyChange_QueryInterface(This,riid,ppvObject) \ 850 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 851 852 #define IPropertyChange_AddRef(This) \ 853 ( (This)->lpVtbl -> AddRef(This) ) 854 855 #define IPropertyChange_Release(This) \ 856 ( (This)->lpVtbl -> Release(This) ) 857 858 859 #define IPropertyChange_SetPropertyKey(This,key) \ 860 ( (This)->lpVtbl -> SetPropertyKey(This,key) ) 861 862 #define IPropertyChange_GetPropertyKey(This,pkey) \ 863 ( (This)->lpVtbl -> GetPropertyKey(This,pkey) ) 864 865 866 #define IPropertyChange_ApplyToPropVariant(This,propvarIn,ppropvarOut) \ 867 ( (This)->lpVtbl -> ApplyToPropVariant(This,propvarIn,ppropvarOut) ) 868 869 #endif /* COBJMACROS */ 870 871 872 #endif /* C style interface */ 873 874 875 876 877 #endif /* __IPropertyChange_INTERFACE_DEFINED__ */ 878 879 880 #ifndef __IPropertyChangeArray_INTERFACE_DEFINED__ 881 #define __IPropertyChangeArray_INTERFACE_DEFINED__ 882 883 /* interface IPropertyChangeArray */ 884 /* [unique][object][uuid] */ 885 886 887 EXTERN_C const IID IID_IPropertyChangeArray; 888 889 #if defined(__cplusplus) && !defined(CINTERFACE) 890 891 MIDL_INTERFACE("380f5cad-1b5e-42f2-805d-637fd392d31e") 892 IPropertyChangeArray : public IUnknown 893 { 894 public: 895 virtual HRESULT STDMETHODCALLTYPE GetCount( 896 /* [out] */ __RPC__out UINT *pcOperations) = 0; 897 898 virtual HRESULT STDMETHODCALLTYPE GetAt( 899 /* [in] */ UINT iIndex, 900 /* [in] */ __RPC__in REFIID riid, 901 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 902 903 virtual HRESULT STDMETHODCALLTYPE InsertAt( 904 /* [in] */ UINT iIndex, 905 /* [in] */ __RPC__in_opt IPropertyChange *ppropChange) = 0; 906 907 virtual HRESULT STDMETHODCALLTYPE Append( 908 /* [in] */ __RPC__in_opt IPropertyChange *ppropChange) = 0; 909 910 virtual HRESULT STDMETHODCALLTYPE AppendOrReplace( 911 /* [in] */ __RPC__in_opt IPropertyChange *ppropChange) = 0; 912 913 virtual HRESULT STDMETHODCALLTYPE RemoveAt( 914 /* [in] */ UINT iIndex) = 0; 915 916 virtual HRESULT STDMETHODCALLTYPE IsKeyInArray( 917 /* [in] */ __RPC__in REFPROPERTYKEY key) = 0; 918 919 }; 920 921 #else /* C style interface */ 922 923 typedef struct IPropertyChangeArrayVtbl 924 { 925 BEGIN_INTERFACE 926 927 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 928 IPropertyChangeArray * This, 929 /* [in] */ __RPC__in REFIID riid, 930 /* [iid_is][out] */ 931 __RPC__deref_out void **ppvObject); 932 933 ULONG ( STDMETHODCALLTYPE *AddRef )( 934 IPropertyChangeArray * This); 935 936 ULONG ( STDMETHODCALLTYPE *Release )( 937 IPropertyChangeArray * This); 938 939 HRESULT ( STDMETHODCALLTYPE *GetCount )( 940 IPropertyChangeArray * This, 941 /* [out] */ __RPC__out UINT *pcOperations); 942 943 HRESULT ( STDMETHODCALLTYPE *GetAt )( 944 IPropertyChangeArray * This, 945 /* [in] */ UINT iIndex, 946 /* [in] */ __RPC__in REFIID riid, 947 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 948 949 HRESULT ( STDMETHODCALLTYPE *InsertAt )( 950 IPropertyChangeArray * This, 951 /* [in] */ UINT iIndex, 952 /* [in] */ __RPC__in_opt IPropertyChange *ppropChange); 953 954 HRESULT ( STDMETHODCALLTYPE *Append )( 955 IPropertyChangeArray * This, 956 /* [in] */ __RPC__in_opt IPropertyChange *ppropChange); 957 958 HRESULT ( STDMETHODCALLTYPE *AppendOrReplace )( 959 IPropertyChangeArray * This, 960 /* [in] */ __RPC__in_opt IPropertyChange *ppropChange); 961 962 HRESULT ( STDMETHODCALLTYPE *RemoveAt )( 963 IPropertyChangeArray * This, 964 /* [in] */ UINT iIndex); 965 966 HRESULT ( STDMETHODCALLTYPE *IsKeyInArray )( 967 IPropertyChangeArray * This, 968 /* [in] */ __RPC__in REFPROPERTYKEY key); 969 970 END_INTERFACE 971 } IPropertyChangeArrayVtbl; 972 973 interface IPropertyChangeArray 974 { 975 CONST_VTBL struct IPropertyChangeArrayVtbl *lpVtbl; 976 }; 977 978 979 980 #ifdef COBJMACROS 981 982 983 #define IPropertyChangeArray_QueryInterface(This,riid,ppvObject) \ 984 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 985 986 #define IPropertyChangeArray_AddRef(This) \ 987 ( (This)->lpVtbl -> AddRef(This) ) 988 989 #define IPropertyChangeArray_Release(This) \ 990 ( (This)->lpVtbl -> Release(This) ) 991 992 993 #define IPropertyChangeArray_GetCount(This,pcOperations) \ 994 ( (This)->lpVtbl -> GetCount(This,pcOperations) ) 995 996 #define IPropertyChangeArray_GetAt(This,iIndex,riid,ppv) \ 997 ( (This)->lpVtbl -> GetAt(This,iIndex,riid,ppv) ) 998 999 #define IPropertyChangeArray_InsertAt(This,iIndex,ppropChange) \ 1000 ( (This)->lpVtbl -> InsertAt(This,iIndex,ppropChange) ) 1001 1002 #define IPropertyChangeArray_Append(This,ppropChange) \ 1003 ( (This)->lpVtbl -> Append(This,ppropChange) ) 1004 1005 #define IPropertyChangeArray_AppendOrReplace(This,ppropChange) \ 1006 ( (This)->lpVtbl -> AppendOrReplace(This,ppropChange) ) 1007 1008 #define IPropertyChangeArray_RemoveAt(This,iIndex) \ 1009 ( (This)->lpVtbl -> RemoveAt(This,iIndex) ) 1010 1011 #define IPropertyChangeArray_IsKeyInArray(This,key) \ 1012 ( (This)->lpVtbl -> IsKeyInArray(This,key) ) 1013 1014 #endif /* COBJMACROS */ 1015 1016 1017 #endif /* C style interface */ 1018 1019 1020 1021 1022 #endif /* __IPropertyChangeArray_INTERFACE_DEFINED__ */ 1023 1024 1025 #ifndef __IPropertyStoreCapabilities_INTERFACE_DEFINED__ 1026 #define __IPropertyStoreCapabilities_INTERFACE_DEFINED__ 1027 1028 /* interface IPropertyStoreCapabilities */ 1029 /* [unique][object][uuid] */ 1030 1031 1032 EXTERN_C const IID IID_IPropertyStoreCapabilities; 1033 1034 #if defined(__cplusplus) && !defined(CINTERFACE) 1035 1036 MIDL_INTERFACE("c8e2d566-186e-4d49-bf41-6909ead56acc") 1037 IPropertyStoreCapabilities : public IUnknown 1038 { 1039 public: 1040 virtual HRESULT STDMETHODCALLTYPE IsPropertyWritable( 1041 /* [in] */ __RPC__in REFPROPERTYKEY key) = 0; 1042 1043 }; 1044 1045 #else /* C style interface */ 1046 1047 typedef struct IPropertyStoreCapabilitiesVtbl 1048 { 1049 BEGIN_INTERFACE 1050 1051 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 1052 IPropertyStoreCapabilities * This, 1053 /* [in] */ __RPC__in REFIID riid, 1054 /* [iid_is][out] */ 1055 __RPC__deref_out void **ppvObject); 1056 1057 ULONG ( STDMETHODCALLTYPE *AddRef )( 1058 IPropertyStoreCapabilities * This); 1059 1060 ULONG ( STDMETHODCALLTYPE *Release )( 1061 IPropertyStoreCapabilities * This); 1062 1063 HRESULT ( STDMETHODCALLTYPE *IsPropertyWritable )( 1064 IPropertyStoreCapabilities * This, 1065 /* [in] */ __RPC__in REFPROPERTYKEY key); 1066 1067 END_INTERFACE 1068 } IPropertyStoreCapabilitiesVtbl; 1069 1070 interface IPropertyStoreCapabilities 1071 { 1072 CONST_VTBL struct IPropertyStoreCapabilitiesVtbl *lpVtbl; 1073 }; 1074 1075 1076 1077 #ifdef COBJMACROS 1078 1079 1080 #define IPropertyStoreCapabilities_QueryInterface(This,riid,ppvObject) \ 1081 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 1082 1083 #define IPropertyStoreCapabilities_AddRef(This) \ 1084 ( (This)->lpVtbl -> AddRef(This) ) 1085 1086 #define IPropertyStoreCapabilities_Release(This) \ 1087 ( (This)->lpVtbl -> Release(This) ) 1088 1089 1090 #define IPropertyStoreCapabilities_IsPropertyWritable(This,key) \ 1091 ( (This)->lpVtbl -> IsPropertyWritable(This,key) ) 1092 1093 #endif /* COBJMACROS */ 1094 1095 1096 #endif /* C style interface */ 1097 1098 1099 1100 1101 #endif /* __IPropertyStoreCapabilities_INTERFACE_DEFINED__ */ 1102 1103 1104 #ifndef __IPropertyStoreCache_INTERFACE_DEFINED__ 1105 #define __IPropertyStoreCache_INTERFACE_DEFINED__ 1106 1107 /* interface IPropertyStoreCache */ 1108 /* [unique][object][uuid] */ 1109 1110 typedef /* [v1_enum] */ 1111 enum _PSC_STATE 1112 { PSC_NORMAL = 0, 1113 PSC_NOTINSOURCE = 1, 1114 PSC_DIRTY = 2, 1115 PSC_READONLY = 3 1116 } PSC_STATE; 1117 1118 1119 EXTERN_C const IID IID_IPropertyStoreCache; 1120 1121 #if defined(__cplusplus) && !defined(CINTERFACE) 1122 1123 MIDL_INTERFACE("3017056d-9a91-4e90-937d-746c72abbf4f") 1124 IPropertyStoreCache : public IPropertyStore 1125 { 1126 public: 1127 virtual HRESULT STDMETHODCALLTYPE GetState( 1128 /* [in] */ __RPC__in REFPROPERTYKEY key, 1129 /* [out] */ __RPC__out PSC_STATE *pstate) = 0; 1130 1131 virtual HRESULT STDMETHODCALLTYPE GetValueAndState( 1132 /* [in] */ __RPC__in REFPROPERTYKEY key, 1133 /* [out] */ __RPC__out PROPVARIANT *ppropvar, 1134 /* [out] */ __RPC__out PSC_STATE *pstate) = 0; 1135 1136 virtual HRESULT STDMETHODCALLTYPE SetState( 1137 /* [in] */ __RPC__in REFPROPERTYKEY key, 1138 /* [in] */ PSC_STATE state) = 0; 1139 1140 virtual HRESULT STDMETHODCALLTYPE SetValueAndState( 1141 /* [in] */ __RPC__in REFPROPERTYKEY key, 1142 /* [unique][in] */ __RPC__in_opt const PROPVARIANT *ppropvar, 1143 /* [in] */ PSC_STATE state) = 0; 1144 1145 }; 1146 1147 #else /* C style interface */ 1148 1149 typedef struct IPropertyStoreCacheVtbl 1150 { 1151 BEGIN_INTERFACE 1152 1153 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 1154 IPropertyStoreCache * This, 1155 /* [in] */ __RPC__in REFIID riid, 1156 /* [iid_is][out] */ 1157 __RPC__deref_out void **ppvObject); 1158 1159 ULONG ( STDMETHODCALLTYPE *AddRef )( 1160 IPropertyStoreCache * This); 1161 1162 ULONG ( STDMETHODCALLTYPE *Release )( 1163 IPropertyStoreCache * This); 1164 1165 HRESULT ( STDMETHODCALLTYPE *GetCount )( 1166 IPropertyStoreCache * This, 1167 /* [out] */ __RPC__out DWORD *cProps); 1168 1169 HRESULT ( STDMETHODCALLTYPE *GetAt )( 1170 IPropertyStoreCache * This, 1171 /* [in] */ DWORD iProp, 1172 /* [out] */ __RPC__out PROPERTYKEY *pkey); 1173 1174 HRESULT ( STDMETHODCALLTYPE *GetValue )( 1175 IPropertyStoreCache * This, 1176 /* [in] */ __RPC__in REFPROPERTYKEY key, 1177 /* [out] */ __RPC__out PROPVARIANT *pv); 1178 1179 HRESULT ( STDMETHODCALLTYPE *SetValue )( 1180 IPropertyStoreCache * This, 1181 /* [in] */ __RPC__in REFPROPERTYKEY key, 1182 /* [in] */ __RPC__in REFPROPVARIANT propvar); 1183 1184 HRESULT ( STDMETHODCALLTYPE *Commit )( 1185 IPropertyStoreCache * This); 1186 1187 HRESULT ( STDMETHODCALLTYPE *GetState )( 1188 IPropertyStoreCache * This, 1189 /* [in] */ __RPC__in REFPROPERTYKEY key, 1190 /* [out] */ __RPC__out PSC_STATE *pstate); 1191 1192 HRESULT ( STDMETHODCALLTYPE *GetValueAndState )( 1193 IPropertyStoreCache * This, 1194 /* [in] */ __RPC__in REFPROPERTYKEY key, 1195 /* [out] */ __RPC__out PROPVARIANT *ppropvar, 1196 /* [out] */ __RPC__out PSC_STATE *pstate); 1197 1198 HRESULT ( STDMETHODCALLTYPE *SetState )( 1199 IPropertyStoreCache * This, 1200 /* [in] */ __RPC__in REFPROPERTYKEY key, 1201 /* [in] */ PSC_STATE state); 1202 1203 HRESULT ( STDMETHODCALLTYPE *SetValueAndState )( 1204 IPropertyStoreCache * This, 1205 /* [in] */ __RPC__in REFPROPERTYKEY key, 1206 /* [unique][in] */ __RPC__in_opt const PROPVARIANT *ppropvar, 1207 /* [in] */ PSC_STATE state); 1208 1209 END_INTERFACE 1210 } IPropertyStoreCacheVtbl; 1211 1212 interface IPropertyStoreCache 1213 { 1214 CONST_VTBL struct IPropertyStoreCacheVtbl *lpVtbl; 1215 }; 1216 1217 1218 1219 #ifdef COBJMACROS 1220 1221 1222 #define IPropertyStoreCache_QueryInterface(This,riid,ppvObject) \ 1223 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 1224 1225 #define IPropertyStoreCache_AddRef(This) \ 1226 ( (This)->lpVtbl -> AddRef(This) ) 1227 1228 #define IPropertyStoreCache_Release(This) \ 1229 ( (This)->lpVtbl -> Release(This) ) 1230 1231 1232 #define IPropertyStoreCache_GetCount(This,cProps) \ 1233 ( (This)->lpVtbl -> GetCount(This,cProps) ) 1234 1235 #define IPropertyStoreCache_GetAt(This,iProp,pkey) \ 1236 ( (This)->lpVtbl -> GetAt(This,iProp,pkey) ) 1237 1238 #define IPropertyStoreCache_GetValue(This,key,pv) \ 1239 ( (This)->lpVtbl -> GetValue(This,key,pv) ) 1240 1241 #define IPropertyStoreCache_SetValue(This,key,propvar) \ 1242 ( (This)->lpVtbl -> SetValue(This,key,propvar) ) 1243 1244 #define IPropertyStoreCache_Commit(This) \ 1245 ( (This)->lpVtbl -> Commit(This) ) 1246 1247 1248 #define IPropertyStoreCache_GetState(This,key,pstate) \ 1249 ( (This)->lpVtbl -> GetState(This,key,pstate) ) 1250 1251 #define IPropertyStoreCache_GetValueAndState(This,key,ppropvar,pstate) \ 1252 ( (This)->lpVtbl -> GetValueAndState(This,key,ppropvar,pstate) ) 1253 1254 #define IPropertyStoreCache_SetState(This,key,state) \ 1255 ( (This)->lpVtbl -> SetState(This,key,state) ) 1256 1257 #define IPropertyStoreCache_SetValueAndState(This,key,ppropvar,state) \ 1258 ( (This)->lpVtbl -> SetValueAndState(This,key,ppropvar,state) ) 1259 1260 #endif /* COBJMACROS */ 1261 1262 1263 #endif /* C style interface */ 1264 1265 1266 1267 1268 #endif /* __IPropertyStoreCache_INTERFACE_DEFINED__ */ 1269 1270 1271 #ifndef __IPropertyEnumType_INTERFACE_DEFINED__ 1272 #define __IPropertyEnumType_INTERFACE_DEFINED__ 1273 1274 /* interface IPropertyEnumType */ 1275 /* [unique][object][uuid] */ 1276 1277 /* [v1_enum] */ 1278 enum tagPROPENUMTYPE 1279 { PET_DISCRETEVALUE = 0, 1280 PET_RANGEDVALUE = 1, 1281 PET_DEFAULTVALUE = 2, 1282 PET_ENDRANGE = 3 1283 } ; 1284 typedef enum tagPROPENUMTYPE PROPENUMTYPE; 1285 1286 1287 EXTERN_C const IID IID_IPropertyEnumType; 1288 1289 #if defined(__cplusplus) && !defined(CINTERFACE) 1290 1291 MIDL_INTERFACE("11e1fbf9-2d56-4a6b-8db3-7cd193a471f2") 1292 IPropertyEnumType : public IUnknown 1293 { 1294 public: 1295 virtual HRESULT STDMETHODCALLTYPE GetEnumType( 1296 /* [out] */ __RPC__out PROPENUMTYPE *penumtype) = 0; 1297 1298 virtual HRESULT STDMETHODCALLTYPE GetValue( 1299 /* [out] */ __RPC__out PROPVARIANT *ppropvar) = 0; 1300 1301 virtual HRESULT STDMETHODCALLTYPE GetRangeMinValue( 1302 /* [out] */ __RPC__out PROPVARIANT *ppropvarMin) = 0; 1303 1304 virtual HRESULT STDMETHODCALLTYPE GetRangeSetValue( 1305 /* [out] */ __RPC__out PROPVARIANT *ppropvarSet) = 0; 1306 1307 virtual HRESULT STDMETHODCALLTYPE GetDisplayText( 1308 /* [out] */ __RPC__deref_out_opt LPWSTR *ppszDisplay) = 0; 1309 1310 }; 1311 1312 #else /* C style interface */ 1313 1314 typedef struct IPropertyEnumTypeVtbl 1315 { 1316 BEGIN_INTERFACE 1317 1318 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 1319 IPropertyEnumType * This, 1320 /* [in] */ __RPC__in REFIID riid, 1321 /* [iid_is][out] */ 1322 __RPC__deref_out void **ppvObject); 1323 1324 ULONG ( STDMETHODCALLTYPE *AddRef )( 1325 IPropertyEnumType * This); 1326 1327 ULONG ( STDMETHODCALLTYPE *Release )( 1328 IPropertyEnumType * This); 1329 1330 HRESULT ( STDMETHODCALLTYPE *GetEnumType )( 1331 IPropertyEnumType * This, 1332 /* [out] */ __RPC__out PROPENUMTYPE *penumtype); 1333 1334 HRESULT ( STDMETHODCALLTYPE *GetValue )( 1335 IPropertyEnumType * This, 1336 /* [out] */ __RPC__out PROPVARIANT *ppropvar); 1337 1338 HRESULT ( STDMETHODCALLTYPE *GetRangeMinValue )( 1339 IPropertyEnumType * This, 1340 /* [out] */ __RPC__out PROPVARIANT *ppropvarMin); 1341 1342 HRESULT ( STDMETHODCALLTYPE *GetRangeSetValue )( 1343 IPropertyEnumType * This, 1344 /* [out] */ __RPC__out PROPVARIANT *ppropvarSet); 1345 1346 HRESULT ( STDMETHODCALLTYPE *GetDisplayText )( 1347 IPropertyEnumType * This, 1348 /* [out] */ __RPC__deref_out_opt LPWSTR *ppszDisplay); 1349 1350 END_INTERFACE 1351 } IPropertyEnumTypeVtbl; 1352 1353 interface IPropertyEnumType 1354 { 1355 CONST_VTBL struct IPropertyEnumTypeVtbl *lpVtbl; 1356 }; 1357 1358 1359 1360 #ifdef COBJMACROS 1361 1362 1363 #define IPropertyEnumType_QueryInterface(This,riid,ppvObject) \ 1364 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 1365 1366 #define IPropertyEnumType_AddRef(This) \ 1367 ( (This)->lpVtbl -> AddRef(This) ) 1368 1369 #define IPropertyEnumType_Release(This) \ 1370 ( (This)->lpVtbl -> Release(This) ) 1371 1372 1373 #define IPropertyEnumType_GetEnumType(This,penumtype) \ 1374 ( (This)->lpVtbl -> GetEnumType(This,penumtype) ) 1375 1376 #define IPropertyEnumType_GetValue(This,ppropvar) \ 1377 ( (This)->lpVtbl -> GetValue(This,ppropvar) ) 1378 1379 #define IPropertyEnumType_GetRangeMinValue(This,ppropvarMin) \ 1380 ( (This)->lpVtbl -> GetRangeMinValue(This,ppropvarMin) ) 1381 1382 #define IPropertyEnumType_GetRangeSetValue(This,ppropvarSet) \ 1383 ( (This)->lpVtbl -> GetRangeSetValue(This,ppropvarSet) ) 1384 1385 #define IPropertyEnumType_GetDisplayText(This,ppszDisplay) \ 1386 ( (This)->lpVtbl -> GetDisplayText(This,ppszDisplay) ) 1387 1388 #endif /* COBJMACROS */ 1389 1390 1391 #endif /* C style interface */ 1392 1393 1394 1395 1396 #endif /* __IPropertyEnumType_INTERFACE_DEFINED__ */ 1397 1398 1399 #ifndef __IPropertyEnumTypeList_INTERFACE_DEFINED__ 1400 #define __IPropertyEnumTypeList_INTERFACE_DEFINED__ 1401 1402 /* interface IPropertyEnumTypeList */ 1403 /* [unique][object][uuid] */ 1404 1405 1406 EXTERN_C const IID IID_IPropertyEnumTypeList; 1407 1408 #if defined(__cplusplus) && !defined(CINTERFACE) 1409 1410 MIDL_INTERFACE("a99400f4-3d84-4557-94ba-1242fb2cc9a6") 1411 IPropertyEnumTypeList : public IUnknown 1412 { 1413 public: 1414 virtual HRESULT STDMETHODCALLTYPE GetCount( 1415 /* [out] */ __RPC__out UINT *pctypes) = 0; 1416 1417 virtual HRESULT STDMETHODCALLTYPE GetAt( 1418 /* [in] */ UINT itype, 1419 /* [in] */ __RPC__in REFIID riid, 1420 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 1421 1422 virtual HRESULT STDMETHODCALLTYPE GetConditionAt( 1423 /* [in] */ UINT nIndex, 1424 /* [in] */ __RPC__in REFIID riid, 1425 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 1426 1427 virtual HRESULT STDMETHODCALLTYPE FindMatchingIndex( 1428 /* [in] */ __RPC__in REFPROPVARIANT propvarCmp, 1429 /* [out] */ __RPC__out UINT *pnIndex) = 0; 1430 1431 }; 1432 1433 #else /* C style interface */ 1434 1435 typedef struct IPropertyEnumTypeListVtbl 1436 { 1437 BEGIN_INTERFACE 1438 1439 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 1440 IPropertyEnumTypeList * This, 1441 /* [in] */ __RPC__in REFIID riid, 1442 /* [iid_is][out] */ 1443 __RPC__deref_out void **ppvObject); 1444 1445 ULONG ( STDMETHODCALLTYPE *AddRef )( 1446 IPropertyEnumTypeList * This); 1447 1448 ULONG ( STDMETHODCALLTYPE *Release )( 1449 IPropertyEnumTypeList * This); 1450 1451 HRESULT ( STDMETHODCALLTYPE *GetCount )( 1452 IPropertyEnumTypeList * This, 1453 /* [out] */ __RPC__out UINT *pctypes); 1454 1455 HRESULT ( STDMETHODCALLTYPE *GetAt )( 1456 IPropertyEnumTypeList * This, 1457 /* [in] */ UINT itype, 1458 /* [in] */ __RPC__in REFIID riid, 1459 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 1460 1461 HRESULT ( STDMETHODCALLTYPE *GetConditionAt )( 1462 IPropertyEnumTypeList * This, 1463 /* [in] */ UINT nIndex, 1464 /* [in] */ __RPC__in REFIID riid, 1465 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 1466 1467 HRESULT ( STDMETHODCALLTYPE *FindMatchingIndex )( 1468 IPropertyEnumTypeList * This, 1469 /* [in] */ __RPC__in REFPROPVARIANT propvarCmp, 1470 /* [out] */ __RPC__out UINT *pnIndex); 1471 1472 END_INTERFACE 1473 } IPropertyEnumTypeListVtbl; 1474 1475 interface IPropertyEnumTypeList 1476 { 1477 CONST_VTBL struct IPropertyEnumTypeListVtbl *lpVtbl; 1478 }; 1479 1480 1481 1482 #ifdef COBJMACROS 1483 1484 1485 #define IPropertyEnumTypeList_QueryInterface(This,riid,ppvObject) \ 1486 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 1487 1488 #define IPropertyEnumTypeList_AddRef(This) \ 1489 ( (This)->lpVtbl -> AddRef(This) ) 1490 1491 #define IPropertyEnumTypeList_Release(This) \ 1492 ( (This)->lpVtbl -> Release(This) ) 1493 1494 1495 #define IPropertyEnumTypeList_GetCount(This,pctypes) \ 1496 ( (This)->lpVtbl -> GetCount(This,pctypes) ) 1497 1498 #define IPropertyEnumTypeList_GetAt(This,itype,riid,ppv) \ 1499 ( (This)->lpVtbl -> GetAt(This,itype,riid,ppv) ) 1500 1501 #define IPropertyEnumTypeList_GetConditionAt(This,nIndex,riid,ppv) \ 1502 ( (This)->lpVtbl -> GetConditionAt(This,nIndex,riid,ppv) ) 1503 1504 #define IPropertyEnumTypeList_FindMatchingIndex(This,propvarCmp,pnIndex) \ 1505 ( (This)->lpVtbl -> FindMatchingIndex(This,propvarCmp,pnIndex) ) 1506 1507 #endif /* COBJMACROS */ 1508 1509 1510 #endif /* C style interface */ 1511 1512 1513 1514 1515 #endif /* __IPropertyEnumTypeList_INTERFACE_DEFINED__ */ 1516 1517 1518 #ifndef __IPropertyDescription_INTERFACE_DEFINED__ 1519 #define __IPropertyDescription_INTERFACE_DEFINED__ 1520 1521 /* interface IPropertyDescription */ 1522 /* [unique][object][uuid] */ 1523 1524 /* [v1_enum] */ 1525 enum tagPROPDESC_TYPE_FLAGS 1526 { PDTF_DEFAULT = 0, 1527 PDTF_MULTIPLEVALUES = 0x1, 1528 PDTF_ISINNATE = 0x2, 1529 PDTF_ISGROUP = 0x4, 1530 PDTF_CANGROUPBY = 0x8, 1531 PDTF_CANSTACKBY = 0x10, 1532 PDTF_ISTREEPROPERTY = 0x20, 1533 PDTF_INCLUDEINFULLTEXTQUERY = 0x40, 1534 PDTF_ISVIEWABLE = 0x80, 1535 PDTF_ISQUERYABLE = 0x100, 1536 PDTF_ISSYSTEMPROPERTY = 0x80000000, 1537 PDTF_MASK_ALL = 0x800001ff 1538 } ; 1539 typedef int PROPDESC_TYPE_FLAGS; 1540 1541 /* [v1_enum] */ 1542 enum tagPROPDESC_VIEW_FLAGS 1543 { PDVF_DEFAULT = 0, 1544 PDVF_CENTERALIGN = 0x1, 1545 PDVF_RIGHTALIGN = 0x2, 1546 PDVF_BEGINNEWGROUP = 0x4, 1547 PDVF_FILLAREA = 0x8, 1548 PDVF_SORTDESCENDING = 0x10, 1549 PDVF_SHOWONLYIFPRESENT = 0x20, 1550 PDVF_SHOWBYDEFAULT = 0x40, 1551 PDVF_SHOWINPRIMARYLIST = 0x80, 1552 PDVF_SHOWINSECONDARYLIST = 0x100, 1553 PDVF_HIDELABEL = 0x200, 1554 PDVF_HIDDEN = 0x800, 1555 PDVF_CANWRAP = 0x1000, 1556 PDVF_MASK_ALL = 0x1bff 1557 } ; 1558 typedef int PROPDESC_VIEW_FLAGS; 1559 1560 /* [v1_enum] */ 1561 enum tagPROPDESC_DISPLAYTYPE 1562 { PDDT_STRING = 0, 1563 PDDT_NUMBER = 1, 1564 PDDT_BOOLEAN = 2, 1565 PDDT_DATETIME = 3, 1566 PDDT_ENUMERATED = 4 1567 } ; 1568 typedef enum tagPROPDESC_DISPLAYTYPE PROPDESC_DISPLAYTYPE; 1569 1570 /* [v1_enum] */ 1571 enum tagPROPDESC_GROUPING_RANGE 1572 { PDGR_DISCRETE = 0, 1573 PDGR_ALPHANUMERIC = 1, 1574 PDGR_SIZE = 2, 1575 PDGR_DYNAMIC = 3, 1576 PDGR_DATE = 4, 1577 PDGR_PERCENT = 5, 1578 PDGR_ENUMERATED = 6 1579 } ; 1580 typedef enum tagPROPDESC_GROUPING_RANGE PROPDESC_GROUPING_RANGE; 1581 1582 /* [v1_enum] */ 1583 enum tagPROPDESC_FORMAT_FLAGS 1584 { PDFF_DEFAULT = 0, 1585 PDFF_PREFIXNAME = 0x1, 1586 PDFF_FILENAME = 0x2, 1587 PDFF_ALWAYSKB = 0x4, 1588 PDFF_RESERVED_RIGHTTOLEFT = 0x8, 1589 PDFF_SHORTTIME = 0x10, 1590 PDFF_LONGTIME = 0x20, 1591 PDFF_HIDETIME = 0x40, 1592 PDFF_SHORTDATE = 0x80, 1593 PDFF_LONGDATE = 0x100, 1594 PDFF_HIDEDATE = 0x200, 1595 PDFF_RELATIVEDATE = 0x400, 1596 PDFF_USEEDITINVITATION = 0x800, 1597 PDFF_READONLY = 0x1000, 1598 PDFF_NOAUTOREADINGORDER = 0x2000 1599 } ; 1600 typedef int PROPDESC_FORMAT_FLAGS; 1601 1602 /* [v1_enum] */ 1603 enum tagPROPDESC_SORTDESCRIPTION 1604 { PDSD_GENERAL = 0, 1605 PDSD_A_Z = 1, 1606 PDSD_LOWEST_HIGHEST = 2, 1607 PDSD_SMALLEST_BIGGEST = 3, 1608 PDSD_OLDEST_NEWEST = 4 1609 } ; 1610 typedef enum tagPROPDESC_SORTDESCRIPTION PROPDESC_SORTDESCRIPTION; 1611 1612 /* [v1_enum] */ 1613 enum tagPROPDESC_RELATIVEDESCRIPTION_TYPE 1614 { PDRDT_GENERAL = 0, 1615 PDRDT_DATE = 1, 1616 PDRDT_SIZE = 2, 1617 PDRDT_COUNT = 3, 1618 PDRDT_REVISION = 4, 1619 PDRDT_LENGTH = 5, 1620 PDRDT_DURATION = 6, 1621 PDRDT_SPEED = 7, 1622 PDRDT_RATE = 8, 1623 PDRDT_RATING = 9, 1624 PDRDT_PRIORITY = 10 1625 } ; 1626 typedef enum tagPROPDESC_RELATIVEDESCRIPTION_TYPE PROPDESC_RELATIVEDESCRIPTION_TYPE; 1627 1628 /* [v1_enum] */ 1629 enum tagPROPDESC_AGGREGATION_TYPE 1630 { PDAT_DEFAULT = 0, 1631 PDAT_FIRST = 1, 1632 PDAT_SUM = 2, 1633 PDAT_AVERAGE = 3, 1634 PDAT_DATERANGE = 4, 1635 PDAT_UNION = 5, 1636 PDAT_MAX = 6, 1637 PDAT_MIN = 7 1638 } ; 1639 typedef enum tagPROPDESC_AGGREGATION_TYPE PROPDESC_AGGREGATION_TYPE; 1640 1641 /* [v1_enum] */ 1642 enum tagPROPDESC_CONDITION_TYPE 1643 { PDCOT_NONE = 0, 1644 PDCOT_STRING = 1, 1645 PDCOT_SIZE = 2, 1646 PDCOT_DATETIME = 3, 1647 PDCOT_BOOLEAN = 4, 1648 PDCOT_NUMBER = 5 1649 } ; 1650 typedef enum tagPROPDESC_CONDITION_TYPE PROPDESC_CONDITION_TYPE; 1651 1652 1653 EXTERN_C const IID IID_IPropertyDescription; 1654 1655 #if defined(__cplusplus) && !defined(CINTERFACE) 1656 1657 MIDL_INTERFACE("6f79d558-3e96-4549-a1d1-7d75d2288814") 1658 IPropertyDescription : public IUnknown 1659 { 1660 public: 1661 virtual HRESULT STDMETHODCALLTYPE GetPropertyKey( 1662 /* [out] */ __RPC__out PROPERTYKEY *pkey) = 0; 1663 1664 virtual HRESULT STDMETHODCALLTYPE GetCanonicalName( 1665 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName) = 0; 1666 1667 virtual HRESULT STDMETHODCALLTYPE GetPropertyType( 1668 /* [out] */ __RPC__out VARTYPE *pvartype) = 0; 1669 1670 virtual HRESULT STDMETHODCALLTYPE GetDisplayName( 1671 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName) = 0; 1672 1673 virtual HRESULT STDMETHODCALLTYPE GetEditInvitation( 1674 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszInvite) = 0; 1675 1676 virtual HRESULT STDMETHODCALLTYPE GetTypeFlags( 1677 /* [in] */ PROPDESC_TYPE_FLAGS mask, 1678 /* [out] */ __RPC__out PROPDESC_TYPE_FLAGS *ppdtFlags) = 0; 1679 1680 virtual HRESULT STDMETHODCALLTYPE GetViewFlags( 1681 /* [out] */ __RPC__out PROPDESC_VIEW_FLAGS *ppdvFlags) = 0; 1682 1683 virtual HRESULT STDMETHODCALLTYPE GetDefaultColumnWidth( 1684 /* [out] */ __RPC__out UINT *pcxChars) = 0; 1685 1686 virtual HRESULT STDMETHODCALLTYPE GetDisplayType( 1687 /* [out] */ __RPC__out PROPDESC_DISPLAYTYPE *pdisplaytype) = 0; 1688 1689 virtual HRESULT STDMETHODCALLTYPE GetColumnState( 1690 /* [out] */ __RPC__out SHCOLSTATEF *pcsFlags) = 0; 1691 1692 virtual HRESULT STDMETHODCALLTYPE GetGroupingRange( 1693 /* [out] */ __RPC__out PROPDESC_GROUPING_RANGE *pgr) = 0; 1694 1695 virtual HRESULT STDMETHODCALLTYPE GetRelativeDescriptionType( 1696 /* [out] */ __RPC__out PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt) = 0; 1697 1698 virtual HRESULT STDMETHODCALLTYPE GetRelativeDescription( 1699 /* [in] */ __RPC__in REFPROPVARIANT propvar1, 1700 /* [in] */ __RPC__in REFPROPVARIANT propvar2, 1701 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc1, 1702 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc2) = 0; 1703 1704 virtual HRESULT STDMETHODCALLTYPE GetSortDescription( 1705 /* [out] */ __RPC__out PROPDESC_SORTDESCRIPTION *psd) = 0; 1706 1707 virtual HRESULT STDMETHODCALLTYPE GetSortDescriptionLabel( 1708 /* [in] */ BOOL fDescending, 1709 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDescription) = 0; 1710 1711 virtual HRESULT STDMETHODCALLTYPE GetAggregationType( 1712 /* [out] */ __RPC__out PROPDESC_AGGREGATION_TYPE *paggtype) = 0; 1713 1714 virtual HRESULT STDMETHODCALLTYPE GetConditionType( 1715 /* [out] */ __RPC__out PROPDESC_CONDITION_TYPE *pcontype, 1716 /* [out] */ __RPC__out CONDITION_OPERATION *popDefault) = 0; 1717 1718 virtual HRESULT STDMETHODCALLTYPE GetEnumTypeList( 1719 /* [in] */ __RPC__in REFIID riid, 1720 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 1721 1722 virtual /* [local] */ HRESULT STDMETHODCALLTYPE CoerceToCanonicalValue( 1723 /* [out][in] */ PROPVARIANT *ppropvar) = 0; 1724 1725 virtual HRESULT STDMETHODCALLTYPE FormatForDisplay( 1726 /* [in] */ __RPC__in REFPROPVARIANT propvar, 1727 /* [in] */ PROPDESC_FORMAT_FLAGS pdfFlags, 1728 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDisplay) = 0; 1729 1730 virtual HRESULT STDMETHODCALLTYPE IsValueCanonical( 1731 /* [in] */ __RPC__in REFPROPVARIANT propvar) = 0; 1732 1733 }; 1734 1735 #else /* C style interface */ 1736 1737 typedef struct IPropertyDescriptionVtbl 1738 { 1739 BEGIN_INTERFACE 1740 1741 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 1742 IPropertyDescription * This, 1743 /* [in] */ __RPC__in REFIID riid, 1744 /* [iid_is][out] */ 1745 __RPC__deref_out void **ppvObject); 1746 1747 ULONG ( STDMETHODCALLTYPE *AddRef )( 1748 IPropertyDescription * This); 1749 1750 ULONG ( STDMETHODCALLTYPE *Release )( 1751 IPropertyDescription * This); 1752 1753 HRESULT ( STDMETHODCALLTYPE *GetPropertyKey )( 1754 IPropertyDescription * This, 1755 /* [out] */ __RPC__out PROPERTYKEY *pkey); 1756 1757 HRESULT ( STDMETHODCALLTYPE *GetCanonicalName )( 1758 IPropertyDescription * This, 1759 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName); 1760 1761 HRESULT ( STDMETHODCALLTYPE *GetPropertyType )( 1762 IPropertyDescription * This, 1763 /* [out] */ __RPC__out VARTYPE *pvartype); 1764 1765 HRESULT ( STDMETHODCALLTYPE *GetDisplayName )( 1766 IPropertyDescription * This, 1767 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName); 1768 1769 HRESULT ( STDMETHODCALLTYPE *GetEditInvitation )( 1770 IPropertyDescription * This, 1771 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszInvite); 1772 1773 HRESULT ( STDMETHODCALLTYPE *GetTypeFlags )( 1774 IPropertyDescription * This, 1775 /* [in] */ PROPDESC_TYPE_FLAGS mask, 1776 /* [out] */ __RPC__out PROPDESC_TYPE_FLAGS *ppdtFlags); 1777 1778 HRESULT ( STDMETHODCALLTYPE *GetViewFlags )( 1779 IPropertyDescription * This, 1780 /* [out] */ __RPC__out PROPDESC_VIEW_FLAGS *ppdvFlags); 1781 1782 HRESULT ( STDMETHODCALLTYPE *GetDefaultColumnWidth )( 1783 IPropertyDescription * This, 1784 /* [out] */ __RPC__out UINT *pcxChars); 1785 1786 HRESULT ( STDMETHODCALLTYPE *GetDisplayType )( 1787 IPropertyDescription * This, 1788 /* [out] */ __RPC__out PROPDESC_DISPLAYTYPE *pdisplaytype); 1789 1790 HRESULT ( STDMETHODCALLTYPE *GetColumnState )( 1791 IPropertyDescription * This, 1792 /* [out] */ __RPC__out SHCOLSTATEF *pcsFlags); 1793 1794 HRESULT ( STDMETHODCALLTYPE *GetGroupingRange )( 1795 IPropertyDescription * This, 1796 /* [out] */ __RPC__out PROPDESC_GROUPING_RANGE *pgr); 1797 1798 HRESULT ( STDMETHODCALLTYPE *GetRelativeDescriptionType )( 1799 IPropertyDescription * This, 1800 /* [out] */ __RPC__out PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt); 1801 1802 HRESULT ( STDMETHODCALLTYPE *GetRelativeDescription )( 1803 IPropertyDescription * This, 1804 /* [in] */ __RPC__in REFPROPVARIANT propvar1, 1805 /* [in] */ __RPC__in REFPROPVARIANT propvar2, 1806 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc1, 1807 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc2); 1808 1809 HRESULT ( STDMETHODCALLTYPE *GetSortDescription )( 1810 IPropertyDescription * This, 1811 /* [out] */ __RPC__out PROPDESC_SORTDESCRIPTION *psd); 1812 1813 HRESULT ( STDMETHODCALLTYPE *GetSortDescriptionLabel )( 1814 IPropertyDescription * This, 1815 /* [in] */ BOOL fDescending, 1816 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDescription); 1817 1818 HRESULT ( STDMETHODCALLTYPE *GetAggregationType )( 1819 IPropertyDescription * This, 1820 /* [out] */ __RPC__out PROPDESC_AGGREGATION_TYPE *paggtype); 1821 1822 HRESULT ( STDMETHODCALLTYPE *GetConditionType )( 1823 IPropertyDescription * This, 1824 /* [out] */ __RPC__out PROPDESC_CONDITION_TYPE *pcontype, 1825 /* [out] */ __RPC__out CONDITION_OPERATION *popDefault); 1826 1827 HRESULT ( STDMETHODCALLTYPE *GetEnumTypeList )( 1828 IPropertyDescription * This, 1829 /* [in] */ __RPC__in REFIID riid, 1830 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 1831 1832 /* [local] */ HRESULT ( STDMETHODCALLTYPE *CoerceToCanonicalValue )( 1833 IPropertyDescription * This, 1834 /* [out][in] */ PROPVARIANT *ppropvar); 1835 1836 HRESULT ( STDMETHODCALLTYPE *FormatForDisplay )( 1837 IPropertyDescription * This, 1838 /* [in] */ __RPC__in REFPROPVARIANT propvar, 1839 /* [in] */ PROPDESC_FORMAT_FLAGS pdfFlags, 1840 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDisplay); 1841 1842 HRESULT ( STDMETHODCALLTYPE *IsValueCanonical )( 1843 IPropertyDescription * This, 1844 /* [in] */ __RPC__in REFPROPVARIANT propvar); 1845 1846 END_INTERFACE 1847 } IPropertyDescriptionVtbl; 1848 1849 interface IPropertyDescription 1850 { 1851 CONST_VTBL struct IPropertyDescriptionVtbl *lpVtbl; 1852 }; 1853 1854 1855 1856 #ifdef COBJMACROS 1857 1858 1859 #define IPropertyDescription_QueryInterface(This,riid,ppvObject) \ 1860 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 1861 1862 #define IPropertyDescription_AddRef(This) \ 1863 ( (This)->lpVtbl -> AddRef(This) ) 1864 1865 #define IPropertyDescription_Release(This) \ 1866 ( (This)->lpVtbl -> Release(This) ) 1867 1868 1869 #define IPropertyDescription_GetPropertyKey(This,pkey) \ 1870 ( (This)->lpVtbl -> GetPropertyKey(This,pkey) ) 1871 1872 #define IPropertyDescription_GetCanonicalName(This,ppszName) \ 1873 ( (This)->lpVtbl -> GetCanonicalName(This,ppszName) ) 1874 1875 #define IPropertyDescription_GetPropertyType(This,pvartype) \ 1876 ( (This)->lpVtbl -> GetPropertyType(This,pvartype) ) 1877 1878 #define IPropertyDescription_GetDisplayName(This,ppszName) \ 1879 ( (This)->lpVtbl -> GetDisplayName(This,ppszName) ) 1880 1881 #define IPropertyDescription_GetEditInvitation(This,ppszInvite) \ 1882 ( (This)->lpVtbl -> GetEditInvitation(This,ppszInvite) ) 1883 1884 #define IPropertyDescription_GetTypeFlags(This,mask,ppdtFlags) \ 1885 ( (This)->lpVtbl -> GetTypeFlags(This,mask,ppdtFlags) ) 1886 1887 #define IPropertyDescription_GetViewFlags(This,ppdvFlags) \ 1888 ( (This)->lpVtbl -> GetViewFlags(This,ppdvFlags) ) 1889 1890 #define IPropertyDescription_GetDefaultColumnWidth(This,pcxChars) \ 1891 ( (This)->lpVtbl -> GetDefaultColumnWidth(This,pcxChars) ) 1892 1893 #define IPropertyDescription_GetDisplayType(This,pdisplaytype) \ 1894 ( (This)->lpVtbl -> GetDisplayType(This,pdisplaytype) ) 1895 1896 #define IPropertyDescription_GetColumnState(This,pcsFlags) \ 1897 ( (This)->lpVtbl -> GetColumnState(This,pcsFlags) ) 1898 1899 #define IPropertyDescription_GetGroupingRange(This,pgr) \ 1900 ( (This)->lpVtbl -> GetGroupingRange(This,pgr) ) 1901 1902 #define IPropertyDescription_GetRelativeDescriptionType(This,prdt) \ 1903 ( (This)->lpVtbl -> GetRelativeDescriptionType(This,prdt) ) 1904 1905 #define IPropertyDescription_GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) \ 1906 ( (This)->lpVtbl -> GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) ) 1907 1908 #define IPropertyDescription_GetSortDescription(This,psd) \ 1909 ( (This)->lpVtbl -> GetSortDescription(This,psd) ) 1910 1911 #define IPropertyDescription_GetSortDescriptionLabel(This,fDescending,ppszDescription) \ 1912 ( (This)->lpVtbl -> GetSortDescriptionLabel(This,fDescending,ppszDescription) ) 1913 1914 #define IPropertyDescription_GetAggregationType(This,paggtype) \ 1915 ( (This)->lpVtbl -> GetAggregationType(This,paggtype) ) 1916 1917 #define IPropertyDescription_GetConditionType(This,pcontype,popDefault) \ 1918 ( (This)->lpVtbl -> GetConditionType(This,pcontype,popDefault) ) 1919 1920 #define IPropertyDescription_GetEnumTypeList(This,riid,ppv) \ 1921 ( (This)->lpVtbl -> GetEnumTypeList(This,riid,ppv) ) 1922 1923 #define IPropertyDescription_CoerceToCanonicalValue(This,ppropvar) \ 1924 ( (This)->lpVtbl -> CoerceToCanonicalValue(This,ppropvar) ) 1925 1926 #define IPropertyDescription_FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) \ 1927 ( (This)->lpVtbl -> FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) ) 1928 1929 #define IPropertyDescription_IsValueCanonical(This,propvar) \ 1930 ( (This)->lpVtbl -> IsValueCanonical(This,propvar) ) 1931 1932 #endif /* COBJMACROS */ 1933 1934 1935 #endif /* C style interface */ 1936 1937 1938 1939 /* [call_as] */ HRESULT STDMETHODCALLTYPE IPropertyDescription_RemoteCoerceToCanonicalValue_Proxy( 1940 IPropertyDescription * This, 1941 /* [in] */ __RPC__in REFPROPVARIANT propvar, 1942 /* [out] */ __RPC__out PROPVARIANT *ppropvar); 1943 1944 1945 void __RPC_STUB IPropertyDescription_RemoteCoerceToCanonicalValue_Stub( 1946 IRpcStubBuffer *This, 1947 IRpcChannelBuffer *_pRpcChannelBuffer, 1948 PRPC_MESSAGE _pRpcMessage, 1949 DWORD *_pdwStubPhase); 1950 1951 1952 1953 #endif /* __IPropertyDescription_INTERFACE_DEFINED__ */ 1954 1955 1956 #ifndef __IPropertyDescriptionAliasInfo_INTERFACE_DEFINED__ 1957 #define __IPropertyDescriptionAliasInfo_INTERFACE_DEFINED__ 1958 1959 /* interface IPropertyDescriptionAliasInfo */ 1960 /* [unique][object][uuid] */ 1961 1962 1963 EXTERN_C const IID IID_IPropertyDescriptionAliasInfo; 1964 1965 #if defined(__cplusplus) && !defined(CINTERFACE) 1966 1967 MIDL_INTERFACE("f67104fc-2af9-46fd-b32d-243c1404f3d1") 1968 IPropertyDescriptionAliasInfo : public IPropertyDescription 1969 { 1970 public: 1971 virtual HRESULT STDMETHODCALLTYPE GetSortByAlias( 1972 /* [in] */ __RPC__in REFIID riid, 1973 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 1974 1975 virtual HRESULT STDMETHODCALLTYPE GetAdditionalSortByAliases( 1976 /* [in] */ __RPC__in REFIID riid, 1977 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 1978 1979 }; 1980 1981 #else /* C style interface */ 1982 1983 typedef struct IPropertyDescriptionAliasInfoVtbl 1984 { 1985 BEGIN_INTERFACE 1986 1987 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 1988 IPropertyDescriptionAliasInfo * This, 1989 /* [in] */ __RPC__in REFIID riid, 1990 /* [iid_is][out] */ 1991 __RPC__deref_out void **ppvObject); 1992 1993 ULONG ( STDMETHODCALLTYPE *AddRef )( 1994 IPropertyDescriptionAliasInfo * This); 1995 1996 ULONG ( STDMETHODCALLTYPE *Release )( 1997 IPropertyDescriptionAliasInfo * This); 1998 1999 HRESULT ( STDMETHODCALLTYPE *GetPropertyKey )( 2000 IPropertyDescriptionAliasInfo * This, 2001 /* [out] */ __RPC__out PROPERTYKEY *pkey); 2002 2003 HRESULT ( STDMETHODCALLTYPE *GetCanonicalName )( 2004 IPropertyDescriptionAliasInfo * This, 2005 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName); 2006 2007 HRESULT ( STDMETHODCALLTYPE *GetPropertyType )( 2008 IPropertyDescriptionAliasInfo * This, 2009 /* [out] */ __RPC__out VARTYPE *pvartype); 2010 2011 HRESULT ( STDMETHODCALLTYPE *GetDisplayName )( 2012 IPropertyDescriptionAliasInfo * This, 2013 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName); 2014 2015 HRESULT ( STDMETHODCALLTYPE *GetEditInvitation )( 2016 IPropertyDescriptionAliasInfo * This, 2017 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszInvite); 2018 2019 HRESULT ( STDMETHODCALLTYPE *GetTypeFlags )( 2020 IPropertyDescriptionAliasInfo * This, 2021 /* [in] */ PROPDESC_TYPE_FLAGS mask, 2022 /* [out] */ __RPC__out PROPDESC_TYPE_FLAGS *ppdtFlags); 2023 2024 HRESULT ( STDMETHODCALLTYPE *GetViewFlags )( 2025 IPropertyDescriptionAliasInfo * This, 2026 /* [out] */ __RPC__out PROPDESC_VIEW_FLAGS *ppdvFlags); 2027 2028 HRESULT ( STDMETHODCALLTYPE *GetDefaultColumnWidth )( 2029 IPropertyDescriptionAliasInfo * This, 2030 /* [out] */ __RPC__out UINT *pcxChars); 2031 2032 HRESULT ( STDMETHODCALLTYPE *GetDisplayType )( 2033 IPropertyDescriptionAliasInfo * This, 2034 /* [out] */ __RPC__out PROPDESC_DISPLAYTYPE *pdisplaytype); 2035 2036 HRESULT ( STDMETHODCALLTYPE *GetColumnState )( 2037 IPropertyDescriptionAliasInfo * This, 2038 /* [out] */ __RPC__out SHCOLSTATEF *pcsFlags); 2039 2040 HRESULT ( STDMETHODCALLTYPE *GetGroupingRange )( 2041 IPropertyDescriptionAliasInfo * This, 2042 /* [out] */ __RPC__out PROPDESC_GROUPING_RANGE *pgr); 2043 2044 HRESULT ( STDMETHODCALLTYPE *GetRelativeDescriptionType )( 2045 IPropertyDescriptionAliasInfo * This, 2046 /* [out] */ __RPC__out PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt); 2047 2048 HRESULT ( STDMETHODCALLTYPE *GetRelativeDescription )( 2049 IPropertyDescriptionAliasInfo * This, 2050 /* [in] */ __RPC__in REFPROPVARIANT propvar1, 2051 /* [in] */ __RPC__in REFPROPVARIANT propvar2, 2052 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc1, 2053 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc2); 2054 2055 HRESULT ( STDMETHODCALLTYPE *GetSortDescription )( 2056 IPropertyDescriptionAliasInfo * This, 2057 /* [out] */ __RPC__out PROPDESC_SORTDESCRIPTION *psd); 2058 2059 HRESULT ( STDMETHODCALLTYPE *GetSortDescriptionLabel )( 2060 IPropertyDescriptionAliasInfo * This, 2061 /* [in] */ BOOL fDescending, 2062 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDescription); 2063 2064 HRESULT ( STDMETHODCALLTYPE *GetAggregationType )( 2065 IPropertyDescriptionAliasInfo * This, 2066 /* [out] */ __RPC__out PROPDESC_AGGREGATION_TYPE *paggtype); 2067 2068 HRESULT ( STDMETHODCALLTYPE *GetConditionType )( 2069 IPropertyDescriptionAliasInfo * This, 2070 /* [out] */ __RPC__out PROPDESC_CONDITION_TYPE *pcontype, 2071 /* [out] */ __RPC__out CONDITION_OPERATION *popDefault); 2072 2073 HRESULT ( STDMETHODCALLTYPE *GetEnumTypeList )( 2074 IPropertyDescriptionAliasInfo * This, 2075 /* [in] */ __RPC__in REFIID riid, 2076 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 2077 2078 /* [local] */ HRESULT ( STDMETHODCALLTYPE *CoerceToCanonicalValue )( 2079 IPropertyDescriptionAliasInfo * This, 2080 /* [out][in] */ PROPVARIANT *ppropvar); 2081 2082 HRESULT ( STDMETHODCALLTYPE *FormatForDisplay )( 2083 IPropertyDescriptionAliasInfo * This, 2084 /* [in] */ __RPC__in REFPROPVARIANT propvar, 2085 /* [in] */ PROPDESC_FORMAT_FLAGS pdfFlags, 2086 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDisplay); 2087 2088 HRESULT ( STDMETHODCALLTYPE *IsValueCanonical )( 2089 IPropertyDescriptionAliasInfo * This, 2090 /* [in] */ __RPC__in REFPROPVARIANT propvar); 2091 2092 HRESULT ( STDMETHODCALLTYPE *GetSortByAlias )( 2093 IPropertyDescriptionAliasInfo * This, 2094 /* [in] */ __RPC__in REFIID riid, 2095 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 2096 2097 HRESULT ( STDMETHODCALLTYPE *GetAdditionalSortByAliases )( 2098 IPropertyDescriptionAliasInfo * This, 2099 /* [in] */ __RPC__in REFIID riid, 2100 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 2101 2102 END_INTERFACE 2103 } IPropertyDescriptionAliasInfoVtbl; 2104 2105 interface IPropertyDescriptionAliasInfo 2106 { 2107 CONST_VTBL struct IPropertyDescriptionAliasInfoVtbl *lpVtbl; 2108 }; 2109 2110 2111 2112 #ifdef COBJMACROS 2113 2114 2115 #define IPropertyDescriptionAliasInfo_QueryInterface(This,riid,ppvObject) \ 2116 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 2117 2118 #define IPropertyDescriptionAliasInfo_AddRef(This) \ 2119 ( (This)->lpVtbl -> AddRef(This) ) 2120 2121 #define IPropertyDescriptionAliasInfo_Release(This) \ 2122 ( (This)->lpVtbl -> Release(This) ) 2123 2124 2125 #define IPropertyDescriptionAliasInfo_GetPropertyKey(This,pkey) \ 2126 ( (This)->lpVtbl -> GetPropertyKey(This,pkey) ) 2127 2128 #define IPropertyDescriptionAliasInfo_GetCanonicalName(This,ppszName) \ 2129 ( (This)->lpVtbl -> GetCanonicalName(This,ppszName) ) 2130 2131 #define IPropertyDescriptionAliasInfo_GetPropertyType(This,pvartype) \ 2132 ( (This)->lpVtbl -> GetPropertyType(This,pvartype) ) 2133 2134 #define IPropertyDescriptionAliasInfo_GetDisplayName(This,ppszName) \ 2135 ( (This)->lpVtbl -> GetDisplayName(This,ppszName) ) 2136 2137 #define IPropertyDescriptionAliasInfo_GetEditInvitation(This,ppszInvite) \ 2138 ( (This)->lpVtbl -> GetEditInvitation(This,ppszInvite) ) 2139 2140 #define IPropertyDescriptionAliasInfo_GetTypeFlags(This,mask,ppdtFlags) \ 2141 ( (This)->lpVtbl -> GetTypeFlags(This,mask,ppdtFlags) ) 2142 2143 #define IPropertyDescriptionAliasInfo_GetViewFlags(This,ppdvFlags) \ 2144 ( (This)->lpVtbl -> GetViewFlags(This,ppdvFlags) ) 2145 2146 #define IPropertyDescriptionAliasInfo_GetDefaultColumnWidth(This,pcxChars) \ 2147 ( (This)->lpVtbl -> GetDefaultColumnWidth(This,pcxChars) ) 2148 2149 #define IPropertyDescriptionAliasInfo_GetDisplayType(This,pdisplaytype) \ 2150 ( (This)->lpVtbl -> GetDisplayType(This,pdisplaytype) ) 2151 2152 #define IPropertyDescriptionAliasInfo_GetColumnState(This,pcsFlags) \ 2153 ( (This)->lpVtbl -> GetColumnState(This,pcsFlags) ) 2154 2155 #define IPropertyDescriptionAliasInfo_GetGroupingRange(This,pgr) \ 2156 ( (This)->lpVtbl -> GetGroupingRange(This,pgr) ) 2157 2158 #define IPropertyDescriptionAliasInfo_GetRelativeDescriptionType(This,prdt) \ 2159 ( (This)->lpVtbl -> GetRelativeDescriptionType(This,prdt) ) 2160 2161 #define IPropertyDescriptionAliasInfo_GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) \ 2162 ( (This)->lpVtbl -> GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) ) 2163 2164 #define IPropertyDescriptionAliasInfo_GetSortDescription(This,psd) \ 2165 ( (This)->lpVtbl -> GetSortDescription(This,psd) ) 2166 2167 #define IPropertyDescriptionAliasInfo_GetSortDescriptionLabel(This,fDescending,ppszDescription) \ 2168 ( (This)->lpVtbl -> GetSortDescriptionLabel(This,fDescending,ppszDescription) ) 2169 2170 #define IPropertyDescriptionAliasInfo_GetAggregationType(This,paggtype) \ 2171 ( (This)->lpVtbl -> GetAggregationType(This,paggtype) ) 2172 2173 #define IPropertyDescriptionAliasInfo_GetConditionType(This,pcontype,popDefault) \ 2174 ( (This)->lpVtbl -> GetConditionType(This,pcontype,popDefault) ) 2175 2176 #define IPropertyDescriptionAliasInfo_GetEnumTypeList(This,riid,ppv) \ 2177 ( (This)->lpVtbl -> GetEnumTypeList(This,riid,ppv) ) 2178 2179 #define IPropertyDescriptionAliasInfo_CoerceToCanonicalValue(This,ppropvar) \ 2180 ( (This)->lpVtbl -> CoerceToCanonicalValue(This,ppropvar) ) 2181 2182 #define IPropertyDescriptionAliasInfo_FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) \ 2183 ( (This)->lpVtbl -> FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) ) 2184 2185 #define IPropertyDescriptionAliasInfo_IsValueCanonical(This,propvar) \ 2186 ( (This)->lpVtbl -> IsValueCanonical(This,propvar) ) 2187 2188 2189 #define IPropertyDescriptionAliasInfo_GetSortByAlias(This,riid,ppv) \ 2190 ( (This)->lpVtbl -> GetSortByAlias(This,riid,ppv) ) 2191 2192 #define IPropertyDescriptionAliasInfo_GetAdditionalSortByAliases(This,riid,ppv) \ 2193 ( (This)->lpVtbl -> GetAdditionalSortByAliases(This,riid,ppv) ) 2194 2195 #endif /* COBJMACROS */ 2196 2197 2198 #endif /* C style interface */ 2199 2200 2201 2202 2203 #endif /* __IPropertyDescriptionAliasInfo_INTERFACE_DEFINED__ */ 2204 2205 2206 #ifndef __IPropertyDescriptionSearchInfo_INTERFACE_DEFINED__ 2207 #define __IPropertyDescriptionSearchInfo_INTERFACE_DEFINED__ 2208 2209 /* interface IPropertyDescriptionSearchInfo */ 2210 /* [unique][object][uuid] */ 2211 2212 /* [v1_enum] */ 2213 enum tagPROPDESC_SEARCHINFO_FLAGS 2214 { PDSIF_DEFAULT = 0, 2215 PDSIF_ININVERTEDINDEX = 0x1, 2216 PDSIF_ISCOLUMN = 0x2, 2217 PDSIF_ISCOLUMNSPARSE = 0x4 2218 } ; 2219 typedef int PROPDESC_SEARCHINFO_FLAGS; 2220 2221 typedef /* [v1_enum] */ 2222 enum tagPROPDESC_COLUMNINDEX_TYPE 2223 { PDCIT_NONE = 0, 2224 PDCIT_ONDISK = 1, 2225 PDCIT_INMEMORY = 2 2226 } PROPDESC_COLUMNINDEX_TYPE; 2227 2228 2229 EXTERN_C const IID IID_IPropertyDescriptionSearchInfo; 2230 2231 #if defined(__cplusplus) && !defined(CINTERFACE) 2232 2233 MIDL_INTERFACE("078f91bd-29a2-440f-924e-46a291524520") 2234 IPropertyDescriptionSearchInfo : public IPropertyDescription 2235 { 2236 public: 2237 virtual HRESULT STDMETHODCALLTYPE GetSearchInfoFlags( 2238 /* [out] */ __RPC__out PROPDESC_SEARCHINFO_FLAGS *ppdsiFlags) = 0; 2239 2240 virtual HRESULT STDMETHODCALLTYPE GetColumnIndexType( 2241 /* [out] */ __RPC__out PROPDESC_COLUMNINDEX_TYPE *ppdciType) = 0; 2242 2243 virtual HRESULT STDMETHODCALLTYPE GetProjectionString( 2244 /* [out] */ __RPC__deref_out_opt LPWSTR *ppszProjection) = 0; 2245 2246 virtual HRESULT STDMETHODCALLTYPE GetMaxSize( 2247 /* [out] */ __RPC__out UINT *pcbMaxSize) = 0; 2248 2249 }; 2250 2251 #else /* C style interface */ 2252 2253 typedef struct IPropertyDescriptionSearchInfoVtbl 2254 { 2255 BEGIN_INTERFACE 2256 2257 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 2258 IPropertyDescriptionSearchInfo * This, 2259 /* [in] */ __RPC__in REFIID riid, 2260 /* [iid_is][out] */ 2261 __RPC__deref_out void **ppvObject); 2262 2263 ULONG ( STDMETHODCALLTYPE *AddRef )( 2264 IPropertyDescriptionSearchInfo * This); 2265 2266 ULONG ( STDMETHODCALLTYPE *Release )( 2267 IPropertyDescriptionSearchInfo * This); 2268 2269 HRESULT ( STDMETHODCALLTYPE *GetPropertyKey )( 2270 IPropertyDescriptionSearchInfo * This, 2271 /* [out] */ __RPC__out PROPERTYKEY *pkey); 2272 2273 HRESULT ( STDMETHODCALLTYPE *GetCanonicalName )( 2274 IPropertyDescriptionSearchInfo * This, 2275 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName); 2276 2277 HRESULT ( STDMETHODCALLTYPE *GetPropertyType )( 2278 IPropertyDescriptionSearchInfo * This, 2279 /* [out] */ __RPC__out VARTYPE *pvartype); 2280 2281 HRESULT ( STDMETHODCALLTYPE *GetDisplayName )( 2282 IPropertyDescriptionSearchInfo * This, 2283 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszName); 2284 2285 HRESULT ( STDMETHODCALLTYPE *GetEditInvitation )( 2286 IPropertyDescriptionSearchInfo * This, 2287 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszInvite); 2288 2289 HRESULT ( STDMETHODCALLTYPE *GetTypeFlags )( 2290 IPropertyDescriptionSearchInfo * This, 2291 /* [in] */ PROPDESC_TYPE_FLAGS mask, 2292 /* [out] */ __RPC__out PROPDESC_TYPE_FLAGS *ppdtFlags); 2293 2294 HRESULT ( STDMETHODCALLTYPE *GetViewFlags )( 2295 IPropertyDescriptionSearchInfo * This, 2296 /* [out] */ __RPC__out PROPDESC_VIEW_FLAGS *ppdvFlags); 2297 2298 HRESULT ( STDMETHODCALLTYPE *GetDefaultColumnWidth )( 2299 IPropertyDescriptionSearchInfo * This, 2300 /* [out] */ __RPC__out UINT *pcxChars); 2301 2302 HRESULT ( STDMETHODCALLTYPE *GetDisplayType )( 2303 IPropertyDescriptionSearchInfo * This, 2304 /* [out] */ __RPC__out PROPDESC_DISPLAYTYPE *pdisplaytype); 2305 2306 HRESULT ( STDMETHODCALLTYPE *GetColumnState )( 2307 IPropertyDescriptionSearchInfo * This, 2308 /* [out] */ __RPC__out SHCOLSTATEF *pcsFlags); 2309 2310 HRESULT ( STDMETHODCALLTYPE *GetGroupingRange )( 2311 IPropertyDescriptionSearchInfo * This, 2312 /* [out] */ __RPC__out PROPDESC_GROUPING_RANGE *pgr); 2313 2314 HRESULT ( STDMETHODCALLTYPE *GetRelativeDescriptionType )( 2315 IPropertyDescriptionSearchInfo * This, 2316 /* [out] */ __RPC__out PROPDESC_RELATIVEDESCRIPTION_TYPE *prdt); 2317 2318 HRESULT ( STDMETHODCALLTYPE *GetRelativeDescription )( 2319 IPropertyDescriptionSearchInfo * This, 2320 /* [in] */ __RPC__in REFPROPVARIANT propvar1, 2321 /* [in] */ __RPC__in REFPROPVARIANT propvar2, 2322 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc1, 2323 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDesc2); 2324 2325 HRESULT ( STDMETHODCALLTYPE *GetSortDescription )( 2326 IPropertyDescriptionSearchInfo * This, 2327 /* [out] */ __RPC__out PROPDESC_SORTDESCRIPTION *psd); 2328 2329 HRESULT ( STDMETHODCALLTYPE *GetSortDescriptionLabel )( 2330 IPropertyDescriptionSearchInfo * This, 2331 /* [in] */ BOOL fDescending, 2332 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDescription); 2333 2334 HRESULT ( STDMETHODCALLTYPE *GetAggregationType )( 2335 IPropertyDescriptionSearchInfo * This, 2336 /* [out] */ __RPC__out PROPDESC_AGGREGATION_TYPE *paggtype); 2337 2338 HRESULT ( STDMETHODCALLTYPE *GetConditionType )( 2339 IPropertyDescriptionSearchInfo * This, 2340 /* [out] */ __RPC__out PROPDESC_CONDITION_TYPE *pcontype, 2341 /* [out] */ __RPC__out CONDITION_OPERATION *popDefault); 2342 2343 HRESULT ( STDMETHODCALLTYPE *GetEnumTypeList )( 2344 IPropertyDescriptionSearchInfo * This, 2345 /* [in] */ __RPC__in REFIID riid, 2346 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 2347 2348 /* [local] */ HRESULT ( STDMETHODCALLTYPE *CoerceToCanonicalValue )( 2349 IPropertyDescriptionSearchInfo * This, 2350 /* [out][in] */ PROPVARIANT *ppropvar); 2351 2352 HRESULT ( STDMETHODCALLTYPE *FormatForDisplay )( 2353 IPropertyDescriptionSearchInfo * This, 2354 /* [in] */ __RPC__in REFPROPVARIANT propvar, 2355 /* [in] */ PROPDESC_FORMAT_FLAGS pdfFlags, 2356 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDisplay); 2357 2358 HRESULT ( STDMETHODCALLTYPE *IsValueCanonical )( 2359 IPropertyDescriptionSearchInfo * This, 2360 /* [in] */ __RPC__in REFPROPVARIANT propvar); 2361 2362 HRESULT ( STDMETHODCALLTYPE *GetSearchInfoFlags )( 2363 IPropertyDescriptionSearchInfo * This, 2364 /* [out] */ __RPC__out PROPDESC_SEARCHINFO_FLAGS *ppdsiFlags); 2365 2366 HRESULT ( STDMETHODCALLTYPE *GetColumnIndexType )( 2367 IPropertyDescriptionSearchInfo * This, 2368 /* [out] */ __RPC__out PROPDESC_COLUMNINDEX_TYPE *ppdciType); 2369 2370 HRESULT ( STDMETHODCALLTYPE *GetProjectionString )( 2371 IPropertyDescriptionSearchInfo * This, 2372 /* [out] */ __RPC__deref_out_opt LPWSTR *ppszProjection); 2373 2374 HRESULT ( STDMETHODCALLTYPE *GetMaxSize )( 2375 IPropertyDescriptionSearchInfo * This, 2376 /* [out] */ __RPC__out UINT *pcbMaxSize); 2377 2378 END_INTERFACE 2379 } IPropertyDescriptionSearchInfoVtbl; 2380 2381 interface IPropertyDescriptionSearchInfo 2382 { 2383 CONST_VTBL struct IPropertyDescriptionSearchInfoVtbl *lpVtbl; 2384 }; 2385 2386 2387 2388 #ifdef COBJMACROS 2389 2390 2391 #define IPropertyDescriptionSearchInfo_QueryInterface(This,riid,ppvObject) \ 2392 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 2393 2394 #define IPropertyDescriptionSearchInfo_AddRef(This) \ 2395 ( (This)->lpVtbl -> AddRef(This) ) 2396 2397 #define IPropertyDescriptionSearchInfo_Release(This) \ 2398 ( (This)->lpVtbl -> Release(This) ) 2399 2400 2401 #define IPropertyDescriptionSearchInfo_GetPropertyKey(This,pkey) \ 2402 ( (This)->lpVtbl -> GetPropertyKey(This,pkey) ) 2403 2404 #define IPropertyDescriptionSearchInfo_GetCanonicalName(This,ppszName) \ 2405 ( (This)->lpVtbl -> GetCanonicalName(This,ppszName) ) 2406 2407 #define IPropertyDescriptionSearchInfo_GetPropertyType(This,pvartype) \ 2408 ( (This)->lpVtbl -> GetPropertyType(This,pvartype) ) 2409 2410 #define IPropertyDescriptionSearchInfo_GetDisplayName(This,ppszName) \ 2411 ( (This)->lpVtbl -> GetDisplayName(This,ppszName) ) 2412 2413 #define IPropertyDescriptionSearchInfo_GetEditInvitation(This,ppszInvite) \ 2414 ( (This)->lpVtbl -> GetEditInvitation(This,ppszInvite) ) 2415 2416 #define IPropertyDescriptionSearchInfo_GetTypeFlags(This,mask,ppdtFlags) \ 2417 ( (This)->lpVtbl -> GetTypeFlags(This,mask,ppdtFlags) ) 2418 2419 #define IPropertyDescriptionSearchInfo_GetViewFlags(This,ppdvFlags) \ 2420 ( (This)->lpVtbl -> GetViewFlags(This,ppdvFlags) ) 2421 2422 #define IPropertyDescriptionSearchInfo_GetDefaultColumnWidth(This,pcxChars) \ 2423 ( (This)->lpVtbl -> GetDefaultColumnWidth(This,pcxChars) ) 2424 2425 #define IPropertyDescriptionSearchInfo_GetDisplayType(This,pdisplaytype) \ 2426 ( (This)->lpVtbl -> GetDisplayType(This,pdisplaytype) ) 2427 2428 #define IPropertyDescriptionSearchInfo_GetColumnState(This,pcsFlags) \ 2429 ( (This)->lpVtbl -> GetColumnState(This,pcsFlags) ) 2430 2431 #define IPropertyDescriptionSearchInfo_GetGroupingRange(This,pgr) \ 2432 ( (This)->lpVtbl -> GetGroupingRange(This,pgr) ) 2433 2434 #define IPropertyDescriptionSearchInfo_GetRelativeDescriptionType(This,prdt) \ 2435 ( (This)->lpVtbl -> GetRelativeDescriptionType(This,prdt) ) 2436 2437 #define IPropertyDescriptionSearchInfo_GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) \ 2438 ( (This)->lpVtbl -> GetRelativeDescription(This,propvar1,propvar2,ppszDesc1,ppszDesc2) ) 2439 2440 #define IPropertyDescriptionSearchInfo_GetSortDescription(This,psd) \ 2441 ( (This)->lpVtbl -> GetSortDescription(This,psd) ) 2442 2443 #define IPropertyDescriptionSearchInfo_GetSortDescriptionLabel(This,fDescending,ppszDescription) \ 2444 ( (This)->lpVtbl -> GetSortDescriptionLabel(This,fDescending,ppszDescription) ) 2445 2446 #define IPropertyDescriptionSearchInfo_GetAggregationType(This,paggtype) \ 2447 ( (This)->lpVtbl -> GetAggregationType(This,paggtype) ) 2448 2449 #define IPropertyDescriptionSearchInfo_GetConditionType(This,pcontype,popDefault) \ 2450 ( (This)->lpVtbl -> GetConditionType(This,pcontype,popDefault) ) 2451 2452 #define IPropertyDescriptionSearchInfo_GetEnumTypeList(This,riid,ppv) \ 2453 ( (This)->lpVtbl -> GetEnumTypeList(This,riid,ppv) ) 2454 2455 #define IPropertyDescriptionSearchInfo_CoerceToCanonicalValue(This,ppropvar) \ 2456 ( (This)->lpVtbl -> CoerceToCanonicalValue(This,ppropvar) ) 2457 2458 #define IPropertyDescriptionSearchInfo_FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) \ 2459 ( (This)->lpVtbl -> FormatForDisplay(This,propvar,pdfFlags,ppszDisplay) ) 2460 2461 #define IPropertyDescriptionSearchInfo_IsValueCanonical(This,propvar) \ 2462 ( (This)->lpVtbl -> IsValueCanonical(This,propvar) ) 2463 2464 2465 #define IPropertyDescriptionSearchInfo_GetSearchInfoFlags(This,ppdsiFlags) \ 2466 ( (This)->lpVtbl -> GetSearchInfoFlags(This,ppdsiFlags) ) 2467 2468 #define IPropertyDescriptionSearchInfo_GetColumnIndexType(This,ppdciType) \ 2469 ( (This)->lpVtbl -> GetColumnIndexType(This,ppdciType) ) 2470 2471 #define IPropertyDescriptionSearchInfo_GetProjectionString(This,ppszProjection) \ 2472 ( (This)->lpVtbl -> GetProjectionString(This,ppszProjection) ) 2473 2474 #define IPropertyDescriptionSearchInfo_GetMaxSize(This,pcbMaxSize) \ 2475 ( (This)->lpVtbl -> GetMaxSize(This,pcbMaxSize) ) 2476 2477 #endif /* COBJMACROS */ 2478 2479 2480 #endif /* C style interface */ 2481 2482 2483 2484 2485 #endif /* __IPropertyDescriptionSearchInfo_INTERFACE_DEFINED__ */ 2486 2487 2488 /* interface __MIDL_itf_propsys_0000_0014 */ 2489 /* [local] */ 2490 2491 /* [v1_enum] */ 2492 enum tagPROPDESC_ENUMFILTER 2493 { PDEF_ALL = 0, 2494 PDEF_SYSTEM = 1, 2495 PDEF_NONSYSTEM = 2, 2496 PDEF_VIEWABLE = 3, 2497 PDEF_QUERYABLE = 4, 2498 PDEF_INFULLTEXTQUERY = 5, 2499 PDEF_COLUMN = 6 2500 } ; 2501 typedef enum tagPROPDESC_ENUMFILTER PROPDESC_ENUMFILTER; 2502 2503 2504 2505 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0014_v0_0_c_ifspec; 2506 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0014_v0_0_s_ifspec; 2507 2508 #ifndef __IPropertySystem_INTERFACE_DEFINED__ 2509 #define __IPropertySystem_INTERFACE_DEFINED__ 2510 2511 /* interface IPropertySystem */ 2512 /* [unique][object][uuid] */ 2513 2514 2515 EXTERN_C const IID IID_IPropertySystem; 2516 2517 #if defined(__cplusplus) && !defined(CINTERFACE) 2518 2519 MIDL_INTERFACE("ca724e8a-c3e6-442b-88a4-6fb0db8035a3") 2520 IPropertySystem : public IUnknown 2521 { 2522 public: 2523 virtual HRESULT STDMETHODCALLTYPE GetPropertyDescription( 2524 /* [in] */ __RPC__in REFPROPERTYKEY propkey, 2525 /* [in] */ __RPC__in REFIID riid, 2526 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 2527 2528 virtual HRESULT STDMETHODCALLTYPE GetPropertyDescriptionByName( 2529 /* [string][in] */ __RPC__in LPCWSTR pszCanonicalName, 2530 /* [in] */ __RPC__in REFIID riid, 2531 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 2532 2533 virtual HRESULT STDMETHODCALLTYPE GetPropertyDescriptionListFromString( 2534 /* [string][in] */ __RPC__in LPCWSTR pszPropList, 2535 /* [in] */ __RPC__in REFIID riid, 2536 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 2537 2538 virtual HRESULT STDMETHODCALLTYPE EnumeratePropertyDescriptions( 2539 /* [in] */ PROPDESC_ENUMFILTER filterOn, 2540 /* [in] */ __RPC__in REFIID riid, 2541 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 2542 2543 virtual HRESULT STDMETHODCALLTYPE FormatForDisplay( 2544 /* [in] */ __RPC__in REFPROPERTYKEY key, 2545 /* [in] */ __RPC__in REFPROPVARIANT propvar, 2546 /* [in] */ PROPDESC_FORMAT_FLAGS pdff, 2547 /* [size_is][string][out] */ __RPC__out_ecount_full_string(cchText) LPWSTR pszText, 2548 /* [in] */ DWORD cchText) = 0; 2549 2550 virtual HRESULT STDMETHODCALLTYPE FormatForDisplayAlloc( 2551 /* [in] */ __RPC__in REFPROPERTYKEY key, 2552 /* [in] */ __RPC__in REFPROPVARIANT propvar, 2553 /* [in] */ PROPDESC_FORMAT_FLAGS pdff, 2554 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDisplay) = 0; 2555 2556 virtual HRESULT STDMETHODCALLTYPE RegisterPropertySchema( 2557 /* [string][in] */ __RPC__in LPCWSTR pszPath) = 0; 2558 2559 virtual HRESULT STDMETHODCALLTYPE UnregisterPropertySchema( 2560 /* [string][in] */ __RPC__in LPCWSTR pszPath) = 0; 2561 2562 virtual HRESULT STDMETHODCALLTYPE RefreshPropertySchema( void) = 0; 2563 2564 }; 2565 2566 #else /* C style interface */ 2567 2568 typedef struct IPropertySystemVtbl 2569 { 2570 BEGIN_INTERFACE 2571 2572 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 2573 IPropertySystem * This, 2574 /* [in] */ __RPC__in REFIID riid, 2575 /* [iid_is][out] */ 2576 __RPC__deref_out void **ppvObject); 2577 2578 ULONG ( STDMETHODCALLTYPE *AddRef )( 2579 IPropertySystem * This); 2580 2581 ULONG ( STDMETHODCALLTYPE *Release )( 2582 IPropertySystem * This); 2583 2584 HRESULT ( STDMETHODCALLTYPE *GetPropertyDescription )( 2585 IPropertySystem * This, 2586 /* [in] */ __RPC__in REFPROPERTYKEY propkey, 2587 /* [in] */ __RPC__in REFIID riid, 2588 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 2589 2590 HRESULT ( STDMETHODCALLTYPE *GetPropertyDescriptionByName )( 2591 IPropertySystem * This, 2592 /* [string][in] */ __RPC__in LPCWSTR pszCanonicalName, 2593 /* [in] */ __RPC__in REFIID riid, 2594 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 2595 2596 HRESULT ( STDMETHODCALLTYPE *GetPropertyDescriptionListFromString )( 2597 IPropertySystem * This, 2598 /* [string][in] */ __RPC__in LPCWSTR pszPropList, 2599 /* [in] */ __RPC__in REFIID riid, 2600 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 2601 2602 HRESULT ( STDMETHODCALLTYPE *EnumeratePropertyDescriptions )( 2603 IPropertySystem * This, 2604 /* [in] */ PROPDESC_ENUMFILTER filterOn, 2605 /* [in] */ __RPC__in REFIID riid, 2606 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 2607 2608 HRESULT ( STDMETHODCALLTYPE *FormatForDisplay )( 2609 IPropertySystem * This, 2610 /* [in] */ __RPC__in REFPROPERTYKEY key, 2611 /* [in] */ __RPC__in REFPROPVARIANT propvar, 2612 /* [in] */ PROPDESC_FORMAT_FLAGS pdff, 2613 /* [size_is][string][out] */ __RPC__out_ecount_full_string(cchText) LPWSTR pszText, 2614 /* [in] */ DWORD cchText); 2615 2616 HRESULT ( STDMETHODCALLTYPE *FormatForDisplayAlloc )( 2617 IPropertySystem * This, 2618 /* [in] */ __RPC__in REFPROPERTYKEY key, 2619 /* [in] */ __RPC__in REFPROPVARIANT propvar, 2620 /* [in] */ PROPDESC_FORMAT_FLAGS pdff, 2621 /* [string][out] */ __RPC__deref_out_opt_string LPWSTR *ppszDisplay); 2622 2623 HRESULT ( STDMETHODCALLTYPE *RegisterPropertySchema )( 2624 IPropertySystem * This, 2625 /* [string][in] */ __RPC__in LPCWSTR pszPath); 2626 2627 HRESULT ( STDMETHODCALLTYPE *UnregisterPropertySchema )( 2628 IPropertySystem * This, 2629 /* [string][in] */ __RPC__in LPCWSTR pszPath); 2630 2631 HRESULT ( STDMETHODCALLTYPE *RefreshPropertySchema )( 2632 IPropertySystem * This); 2633 2634 END_INTERFACE 2635 } IPropertySystemVtbl; 2636 2637 interface IPropertySystem 2638 { 2639 CONST_VTBL struct IPropertySystemVtbl *lpVtbl; 2640 }; 2641 2642 2643 2644 #ifdef COBJMACROS 2645 2646 2647 #define IPropertySystem_QueryInterface(This,riid,ppvObject) \ 2648 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 2649 2650 #define IPropertySystem_AddRef(This) \ 2651 ( (This)->lpVtbl -> AddRef(This) ) 2652 2653 #define IPropertySystem_Release(This) \ 2654 ( (This)->lpVtbl -> Release(This) ) 2655 2656 2657 #define IPropertySystem_GetPropertyDescription(This,propkey,riid,ppv) \ 2658 ( (This)->lpVtbl -> GetPropertyDescription(This,propkey,riid,ppv) ) 2659 2660 #define IPropertySystem_GetPropertyDescriptionByName(This,pszCanonicalName,riid,ppv) \ 2661 ( (This)->lpVtbl -> GetPropertyDescriptionByName(This,pszCanonicalName,riid,ppv) ) 2662 2663 #define IPropertySystem_GetPropertyDescriptionListFromString(This,pszPropList,riid,ppv) \ 2664 ( (This)->lpVtbl -> GetPropertyDescriptionListFromString(This,pszPropList,riid,ppv) ) 2665 2666 #define IPropertySystem_EnumeratePropertyDescriptions(This,filterOn,riid,ppv) \ 2667 ( (This)->lpVtbl -> EnumeratePropertyDescriptions(This,filterOn,riid,ppv) ) 2668 2669 #define IPropertySystem_FormatForDisplay(This,key,propvar,pdff,pszText,cchText) \ 2670 ( (This)->lpVtbl -> FormatForDisplay(This,key,propvar,pdff,pszText,cchText) ) 2671 2672 #define IPropertySystem_FormatForDisplayAlloc(This,key,propvar,pdff,ppszDisplay) \ 2673 ( (This)->lpVtbl -> FormatForDisplayAlloc(This,key,propvar,pdff,ppszDisplay) ) 2674 2675 #define IPropertySystem_RegisterPropertySchema(This,pszPath) \ 2676 ( (This)->lpVtbl -> RegisterPropertySchema(This,pszPath) ) 2677 2678 #define IPropertySystem_UnregisterPropertySchema(This,pszPath) \ 2679 ( (This)->lpVtbl -> UnregisterPropertySchema(This,pszPath) ) 2680 2681 #define IPropertySystem_RefreshPropertySchema(This) \ 2682 ( (This)->lpVtbl -> RefreshPropertySchema(This) ) 2683 2684 #endif /* COBJMACROS */ 2685 2686 2687 #endif /* C style interface */ 2688 2689 2690 2691 2692 #endif /* __IPropertySystem_INTERFACE_DEFINED__ */ 2693 2694 2695 #ifndef __IPropertyDescriptionList_INTERFACE_DEFINED__ 2696 #define __IPropertyDescriptionList_INTERFACE_DEFINED__ 2697 2698 /* interface IPropertyDescriptionList */ 2699 /* [unique][object][uuid] */ 2700 2701 2702 EXTERN_C const IID IID_IPropertyDescriptionList; 2703 2704 #if defined(__cplusplus) && !defined(CINTERFACE) 2705 2706 MIDL_INTERFACE("1f9fc1d0-c39b-4b26-817f-011967d3440e") 2707 IPropertyDescriptionList : public IUnknown 2708 { 2709 public: 2710 virtual HRESULT STDMETHODCALLTYPE GetCount( 2711 /* [out] */ __RPC__out UINT *pcElem) = 0; 2712 2713 virtual HRESULT STDMETHODCALLTYPE GetAt( 2714 /* [in] */ UINT iElem, 2715 /* [in] */ __RPC__in REFIID riid, 2716 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 2717 2718 }; 2719 2720 #else /* C style interface */ 2721 2722 typedef struct IPropertyDescriptionListVtbl 2723 { 2724 BEGIN_INTERFACE 2725 2726 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 2727 IPropertyDescriptionList * This, 2728 /* [in] */ __RPC__in REFIID riid, 2729 /* [iid_is][out] */ 2730 __RPC__deref_out void **ppvObject); 2731 2732 ULONG ( STDMETHODCALLTYPE *AddRef )( 2733 IPropertyDescriptionList * This); 2734 2735 ULONG ( STDMETHODCALLTYPE *Release )( 2736 IPropertyDescriptionList * This); 2737 2738 HRESULT ( STDMETHODCALLTYPE *GetCount )( 2739 IPropertyDescriptionList * This, 2740 /* [out] */ __RPC__out UINT *pcElem); 2741 2742 HRESULT ( STDMETHODCALLTYPE *GetAt )( 2743 IPropertyDescriptionList * This, 2744 /* [in] */ UINT iElem, 2745 /* [in] */ __RPC__in REFIID riid, 2746 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 2747 2748 END_INTERFACE 2749 } IPropertyDescriptionListVtbl; 2750 2751 interface IPropertyDescriptionList 2752 { 2753 CONST_VTBL struct IPropertyDescriptionListVtbl *lpVtbl; 2754 }; 2755 2756 2757 2758 #ifdef COBJMACROS 2759 2760 2761 #define IPropertyDescriptionList_QueryInterface(This,riid,ppvObject) \ 2762 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 2763 2764 #define IPropertyDescriptionList_AddRef(This) \ 2765 ( (This)->lpVtbl -> AddRef(This) ) 2766 2767 #define IPropertyDescriptionList_Release(This) \ 2768 ( (This)->lpVtbl -> Release(This) ) 2769 2770 2771 #define IPropertyDescriptionList_GetCount(This,pcElem) \ 2772 ( (This)->lpVtbl -> GetCount(This,pcElem) ) 2773 2774 #define IPropertyDescriptionList_GetAt(This,iElem,riid,ppv) \ 2775 ( (This)->lpVtbl -> GetAt(This,iElem,riid,ppv) ) 2776 2777 #endif /* COBJMACROS */ 2778 2779 2780 #endif /* C style interface */ 2781 2782 2783 2784 2785 #endif /* __IPropertyDescriptionList_INTERFACE_DEFINED__ */ 2786 2787 2788 #ifndef __IPropertyStoreFactory_INTERFACE_DEFINED__ 2789 #define __IPropertyStoreFactory_INTERFACE_DEFINED__ 2790 2791 /* interface IPropertyStoreFactory */ 2792 /* [unique][object][uuid] */ 2793 2794 2795 EXTERN_C const IID IID_IPropertyStoreFactory; 2796 2797 #if defined(__cplusplus) && !defined(CINTERFACE) 2798 2799 MIDL_INTERFACE("bc110b6d-57e8-4148-a9c6-91015ab2f3a5") 2800 IPropertyStoreFactory : public IUnknown 2801 { 2802 public: 2803 virtual HRESULT STDMETHODCALLTYPE GetPropertyStore( 2804 /* [in] */ GETPROPERTYSTOREFLAGS flags, 2805 /* [unique][in] */ __RPC__in_opt IUnknown *pUnkFactory, 2806 /* [in] */ __RPC__in REFIID riid, 2807 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 2808 2809 virtual HRESULT STDMETHODCALLTYPE GetPropertyStoreForKeys( 2810 /* [unique][in] */ __RPC__in_opt const PROPERTYKEY *rgKeys, 2811 /* [in] */ UINT cKeys, 2812 /* [in] */ GETPROPERTYSTOREFLAGS flags, 2813 /* [in] */ __RPC__in REFIID riid, 2814 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 2815 2816 }; 2817 2818 #else /* C style interface */ 2819 2820 typedef struct IPropertyStoreFactoryVtbl 2821 { 2822 BEGIN_INTERFACE 2823 2824 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 2825 IPropertyStoreFactory * This, 2826 /* [in] */ __RPC__in REFIID riid, 2827 /* [iid_is][out] */ 2828 __RPC__deref_out void **ppvObject); 2829 2830 ULONG ( STDMETHODCALLTYPE *AddRef )( 2831 IPropertyStoreFactory * This); 2832 2833 ULONG ( STDMETHODCALLTYPE *Release )( 2834 IPropertyStoreFactory * This); 2835 2836 HRESULT ( STDMETHODCALLTYPE *GetPropertyStore )( 2837 IPropertyStoreFactory * This, 2838 /* [in] */ GETPROPERTYSTOREFLAGS flags, 2839 /* [unique][in] */ __RPC__in_opt IUnknown *pUnkFactory, 2840 /* [in] */ __RPC__in REFIID riid, 2841 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 2842 2843 HRESULT ( STDMETHODCALLTYPE *GetPropertyStoreForKeys )( 2844 IPropertyStoreFactory * This, 2845 /* [unique][in] */ __RPC__in_opt const PROPERTYKEY *rgKeys, 2846 /* [in] */ UINT cKeys, 2847 /* [in] */ GETPROPERTYSTOREFLAGS flags, 2848 /* [in] */ __RPC__in REFIID riid, 2849 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 2850 2851 END_INTERFACE 2852 } IPropertyStoreFactoryVtbl; 2853 2854 interface IPropertyStoreFactory 2855 { 2856 CONST_VTBL struct IPropertyStoreFactoryVtbl *lpVtbl; 2857 }; 2858 2859 2860 2861 #ifdef COBJMACROS 2862 2863 2864 #define IPropertyStoreFactory_QueryInterface(This,riid,ppvObject) \ 2865 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 2866 2867 #define IPropertyStoreFactory_AddRef(This) \ 2868 ( (This)->lpVtbl -> AddRef(This) ) 2869 2870 #define IPropertyStoreFactory_Release(This) \ 2871 ( (This)->lpVtbl -> Release(This) ) 2872 2873 2874 #define IPropertyStoreFactory_GetPropertyStore(This,flags,pUnkFactory,riid,ppv) \ 2875 ( (This)->lpVtbl -> GetPropertyStore(This,flags,pUnkFactory,riid,ppv) ) 2876 2877 #define IPropertyStoreFactory_GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) \ 2878 ( (This)->lpVtbl -> GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) ) 2879 2880 #endif /* COBJMACROS */ 2881 2882 2883 #endif /* C style interface */ 2884 2885 2886 2887 2888 #endif /* __IPropertyStoreFactory_INTERFACE_DEFINED__ */ 2889 2890 2891 #ifndef __IDelayedPropertyStoreFactory_INTERFACE_DEFINED__ 2892 #define __IDelayedPropertyStoreFactory_INTERFACE_DEFINED__ 2893 2894 /* interface IDelayedPropertyStoreFactory */ 2895 /* [unique][object][uuid] */ 2896 2897 2898 EXTERN_C const IID IID_IDelayedPropertyStoreFactory; 2899 2900 #if defined(__cplusplus) && !defined(CINTERFACE) 2901 2902 MIDL_INTERFACE("40d4577f-e237-4bdb-bd69-58f089431b6a") 2903 IDelayedPropertyStoreFactory : public IPropertyStoreFactory 2904 { 2905 public: 2906 virtual HRESULT STDMETHODCALLTYPE GetDelayedPropertyStore( 2907 /* [in] */ GETPROPERTYSTOREFLAGS flags, 2908 /* [in] */ DWORD dwStoreId, 2909 /* [in] */ __RPC__in REFIID riid, 2910 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 2911 2912 }; 2913 2914 #else /* C style interface */ 2915 2916 typedef struct IDelayedPropertyStoreFactoryVtbl 2917 { 2918 BEGIN_INTERFACE 2919 2920 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 2921 IDelayedPropertyStoreFactory * This, 2922 /* [in] */ __RPC__in REFIID riid, 2923 /* [iid_is][out] */ 2924 __RPC__deref_out void **ppvObject); 2925 2926 ULONG ( STDMETHODCALLTYPE *AddRef )( 2927 IDelayedPropertyStoreFactory * This); 2928 2929 ULONG ( STDMETHODCALLTYPE *Release )( 2930 IDelayedPropertyStoreFactory * This); 2931 2932 HRESULT ( STDMETHODCALLTYPE *GetPropertyStore )( 2933 IDelayedPropertyStoreFactory * This, 2934 /* [in] */ GETPROPERTYSTOREFLAGS flags, 2935 /* [unique][in] */ __RPC__in_opt IUnknown *pUnkFactory, 2936 /* [in] */ __RPC__in REFIID riid, 2937 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 2938 2939 HRESULT ( STDMETHODCALLTYPE *GetPropertyStoreForKeys )( 2940 IDelayedPropertyStoreFactory * This, 2941 /* [unique][in] */ __RPC__in_opt const PROPERTYKEY *rgKeys, 2942 /* [in] */ UINT cKeys, 2943 /* [in] */ GETPROPERTYSTOREFLAGS flags, 2944 /* [in] */ __RPC__in REFIID riid, 2945 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 2946 2947 HRESULT ( STDMETHODCALLTYPE *GetDelayedPropertyStore )( 2948 IDelayedPropertyStoreFactory * This, 2949 /* [in] */ GETPROPERTYSTOREFLAGS flags, 2950 /* [in] */ DWORD dwStoreId, 2951 /* [in] */ __RPC__in REFIID riid, 2952 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 2953 2954 END_INTERFACE 2955 } IDelayedPropertyStoreFactoryVtbl; 2956 2957 interface IDelayedPropertyStoreFactory 2958 { 2959 CONST_VTBL struct IDelayedPropertyStoreFactoryVtbl *lpVtbl; 2960 }; 2961 2962 2963 2964 #ifdef COBJMACROS 2965 2966 2967 #define IDelayedPropertyStoreFactory_QueryInterface(This,riid,ppvObject) \ 2968 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 2969 2970 #define IDelayedPropertyStoreFactory_AddRef(This) \ 2971 ( (This)->lpVtbl -> AddRef(This) ) 2972 2973 #define IDelayedPropertyStoreFactory_Release(This) \ 2974 ( (This)->lpVtbl -> Release(This) ) 2975 2976 2977 #define IDelayedPropertyStoreFactory_GetPropertyStore(This,flags,pUnkFactory,riid,ppv) \ 2978 ( (This)->lpVtbl -> GetPropertyStore(This,flags,pUnkFactory,riid,ppv) ) 2979 2980 #define IDelayedPropertyStoreFactory_GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) \ 2981 ( (This)->lpVtbl -> GetPropertyStoreForKeys(This,rgKeys,cKeys,flags,riid,ppv) ) 2982 2983 2984 #define IDelayedPropertyStoreFactory_GetDelayedPropertyStore(This,flags,dwStoreId,riid,ppv) \ 2985 ( (This)->lpVtbl -> GetDelayedPropertyStore(This,flags,dwStoreId,riid,ppv) ) 2986 2987 #endif /* COBJMACROS */ 2988 2989 2990 #endif /* C style interface */ 2991 2992 2993 2994 2995 #endif /* __IDelayedPropertyStoreFactory_INTERFACE_DEFINED__ */ 2996 2997 2998 /* interface __MIDL_itf_propsys_0000_0018 */ 2999 /* [local] */ 3000 3001 /* [v1_enum] */ 3002 enum tagPERSIST_SPROPSTORE_FLAGS 3003 { FPSPS_READONLY = 0x1 3004 } ; 3005 typedef int PERSIST_SPROPSTORE_FLAGS; 3006 3007 typedef struct tagSERIALIZEDPROPSTORAGE SERIALIZEDPROPSTORAGE; 3008 3009 typedef SERIALIZEDPROPSTORAGE __unaligned *PUSERIALIZEDPROPSTORAGE; 3010 3011 typedef const SERIALIZEDPROPSTORAGE __unaligned *PCUSERIALIZEDPROPSTORAGE; 3012 3013 3014 3015 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0018_v0_0_c_ifspec; 3016 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0018_v0_0_s_ifspec; 3017 3018 #ifndef __IPersistSerializedPropStorage_INTERFACE_DEFINED__ 3019 #define __IPersistSerializedPropStorage_INTERFACE_DEFINED__ 3020 3021 /* interface IPersistSerializedPropStorage */ 3022 /* [object][local][unique][uuid] */ 3023 3024 3025 EXTERN_C const IID IID_IPersistSerializedPropStorage; 3026 3027 #if defined(__cplusplus) && !defined(CINTERFACE) 3028 3029 MIDL_INTERFACE("e318ad57-0aa0-450f-aca5-6fab7103d917") 3030 IPersistSerializedPropStorage : public IUnknown 3031 { 3032 public: 3033 virtual HRESULT STDMETHODCALLTYPE SetFlags( 3034 /* [in] */ PERSIST_SPROPSTORE_FLAGS flags) = 0; 3035 3036 virtual HRESULT STDMETHODCALLTYPE SetPropertyStorage( 3037 /* [in] */ 3038 __in_bcount(cb) PCUSERIALIZEDPROPSTORAGE psps, 3039 /* [in] */ 3040 __in DWORD cb) = 0; 3041 3042 virtual HRESULT STDMETHODCALLTYPE GetPropertyStorage( 3043 /* [out] */ 3044 __deref_out_bcount(*pcb) SERIALIZEDPROPSTORAGE **ppsps, 3045 /* [out] */ 3046 __out DWORD *pcb) = 0; 3047 3048 }; 3049 3050 #else /* C style interface */ 3051 3052 typedef struct IPersistSerializedPropStorageVtbl 3053 { 3054 BEGIN_INTERFACE 3055 3056 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 3057 IPersistSerializedPropStorage * This, 3058 /* [in] */ REFIID riid, 3059 /* [iid_is][out] */ 3060 __RPC__deref_out void **ppvObject); 3061 3062 ULONG ( STDMETHODCALLTYPE *AddRef )( 3063 IPersistSerializedPropStorage * This); 3064 3065 ULONG ( STDMETHODCALLTYPE *Release )( 3066 IPersistSerializedPropStorage * This); 3067 3068 HRESULT ( STDMETHODCALLTYPE *SetFlags )( 3069 IPersistSerializedPropStorage * This, 3070 /* [in] */ PERSIST_SPROPSTORE_FLAGS flags); 3071 3072 HRESULT ( STDMETHODCALLTYPE *SetPropertyStorage )( 3073 IPersistSerializedPropStorage * This, 3074 /* [in] */ 3075 __in_bcount(cb) PCUSERIALIZEDPROPSTORAGE psps, 3076 /* [in] */ 3077 __in DWORD cb); 3078 3079 HRESULT ( STDMETHODCALLTYPE *GetPropertyStorage )( 3080 IPersistSerializedPropStorage * This, 3081 /* [out] */ 3082 __deref_out_bcount(*pcb) SERIALIZEDPROPSTORAGE **ppsps, 3083 /* [out] */ 3084 __out DWORD *pcb); 3085 3086 END_INTERFACE 3087 } IPersistSerializedPropStorageVtbl; 3088 3089 interface IPersistSerializedPropStorage 3090 { 3091 CONST_VTBL struct IPersistSerializedPropStorageVtbl *lpVtbl; 3092 }; 3093 3094 3095 3096 #ifdef COBJMACROS 3097 3098 3099 #define IPersistSerializedPropStorage_QueryInterface(This,riid,ppvObject) \ 3100 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 3101 3102 #define IPersistSerializedPropStorage_AddRef(This) \ 3103 ( (This)->lpVtbl -> AddRef(This) ) 3104 3105 #define IPersistSerializedPropStorage_Release(This) \ 3106 ( (This)->lpVtbl -> Release(This) ) 3107 3108 3109 #define IPersistSerializedPropStorage_SetFlags(This,flags) \ 3110 ( (This)->lpVtbl -> SetFlags(This,flags) ) 3111 3112 #define IPersistSerializedPropStorage_SetPropertyStorage(This,psps,cb) \ 3113 ( (This)->lpVtbl -> SetPropertyStorage(This,psps,cb) ) 3114 3115 #define IPersistSerializedPropStorage_GetPropertyStorage(This,ppsps,pcb) \ 3116 ( (This)->lpVtbl -> GetPropertyStorage(This,ppsps,pcb) ) 3117 3118 #endif /* COBJMACROS */ 3119 3120 3121 #endif /* C style interface */ 3122 3123 3124 3125 3126 #endif /* __IPersistSerializedPropStorage_INTERFACE_DEFINED__ */ 3127 3128 3129 #ifndef __IPropertySystemChangeNotify_INTERFACE_DEFINED__ 3130 #define __IPropertySystemChangeNotify_INTERFACE_DEFINED__ 3131 3132 /* interface IPropertySystemChangeNotify */ 3133 /* [unique][object][uuid] */ 3134 3135 3136 EXTERN_C const IID IID_IPropertySystemChangeNotify; 3137 3138 #if defined(__cplusplus) && !defined(CINTERFACE) 3139 3140 MIDL_INTERFACE("fa955fd9-38be-4879-a6ce-824cf52d609f") 3141 IPropertySystemChangeNotify : public IUnknown 3142 { 3143 public: 3144 virtual HRESULT STDMETHODCALLTYPE SchemaRefreshed( void) = 0; 3145 3146 }; 3147 3148 #else /* C style interface */ 3149 3150 typedef struct IPropertySystemChangeNotifyVtbl 3151 { 3152 BEGIN_INTERFACE 3153 3154 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 3155 IPropertySystemChangeNotify * This, 3156 /* [in] */ __RPC__in REFIID riid, 3157 /* [iid_is][out] */ 3158 __RPC__deref_out void **ppvObject); 3159 3160 ULONG ( STDMETHODCALLTYPE *AddRef )( 3161 IPropertySystemChangeNotify * This); 3162 3163 ULONG ( STDMETHODCALLTYPE *Release )( 3164 IPropertySystemChangeNotify * This); 3165 3166 HRESULT ( STDMETHODCALLTYPE *SchemaRefreshed )( 3167 IPropertySystemChangeNotify * This); 3168 3169 END_INTERFACE 3170 } IPropertySystemChangeNotifyVtbl; 3171 3172 interface IPropertySystemChangeNotify 3173 { 3174 CONST_VTBL struct IPropertySystemChangeNotifyVtbl *lpVtbl; 3175 }; 3176 3177 3178 3179 #ifdef COBJMACROS 3180 3181 3182 #define IPropertySystemChangeNotify_QueryInterface(This,riid,ppvObject) \ 3183 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 3184 3185 #define IPropertySystemChangeNotify_AddRef(This) \ 3186 ( (This)->lpVtbl -> AddRef(This) ) 3187 3188 #define IPropertySystemChangeNotify_Release(This) \ 3189 ( (This)->lpVtbl -> Release(This) ) 3190 3191 3192 #define IPropertySystemChangeNotify_SchemaRefreshed(This) \ 3193 ( (This)->lpVtbl -> SchemaRefreshed(This) ) 3194 3195 #endif /* COBJMACROS */ 3196 3197 3198 #endif /* C style interface */ 3199 3200 3201 3202 3203 #endif /* __IPropertySystemChangeNotify_INTERFACE_DEFINED__ */ 3204 3205 3206 #ifndef __ICreateObject_INTERFACE_DEFINED__ 3207 #define __ICreateObject_INTERFACE_DEFINED__ 3208 3209 /* interface ICreateObject */ 3210 /* [object][unique][uuid] */ 3211 3212 3213 EXTERN_C const IID IID_ICreateObject; 3214 3215 #if defined(__cplusplus) && !defined(CINTERFACE) 3216 3217 MIDL_INTERFACE("75121952-e0d0-43e5-9380-1d80483acf72") 3218 ICreateObject : public IUnknown 3219 { 3220 public: 3221 virtual HRESULT STDMETHODCALLTYPE CreateObject( 3222 /* [in] */ __RPC__in REFCLSID clsid, 3223 /* [unique][in] */ __RPC__in_opt IUnknown *pUnkOuter, 3224 /* [in] */ __RPC__in REFIID riid, 3225 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv) = 0; 3226 3227 }; 3228 3229 #else /* C style interface */ 3230 3231 typedef struct ICreateObjectVtbl 3232 { 3233 BEGIN_INTERFACE 3234 3235 HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 3236 ICreateObject * This, 3237 /* [in] */ __RPC__in REFIID riid, 3238 /* [iid_is][out] */ 3239 __RPC__deref_out void **ppvObject); 3240 3241 ULONG ( STDMETHODCALLTYPE *AddRef )( 3242 ICreateObject * This); 3243 3244 ULONG ( STDMETHODCALLTYPE *Release )( 3245 ICreateObject * This); 3246 3247 HRESULT ( STDMETHODCALLTYPE *CreateObject )( 3248 ICreateObject * This, 3249 /* [in] */ __RPC__in REFCLSID clsid, 3250 /* [unique][in] */ __RPC__in_opt IUnknown *pUnkOuter, 3251 /* [in] */ __RPC__in REFIID riid, 3252 /* [iid_is][out] */ __RPC__deref_out_opt void **ppv); 3253 3254 END_INTERFACE 3255 } ICreateObjectVtbl; 3256 3257 interface ICreateObject 3258 { 3259 CONST_VTBL struct ICreateObjectVtbl *lpVtbl; 3260 }; 3261 3262 3263 3264 #ifdef COBJMACROS 3265 3266 3267 #define ICreateObject_QueryInterface(This,riid,ppvObject) \ 3268 ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 3269 3270 #define ICreateObject_AddRef(This) \ 3271 ( (This)->lpVtbl -> AddRef(This) ) 3272 3273 #define ICreateObject_Release(This) \ 3274 ( (This)->lpVtbl -> Release(This) ) 3275 3276 3277 #define ICreateObject_CreateObject(This,clsid,pUnkOuter,riid,ppv) \ 3278 ( (This)->lpVtbl -> CreateObject(This,clsid,pUnkOuter,riid,ppv) ) 3279 3280 #endif /* COBJMACROS */ 3281 3282 3283 #endif /* C style interface */ 3284 3285 3286 3287 3288 #endif /* __ICreateObject_INTERFACE_DEFINED__ */ 3289 3290 3291 /* interface __MIDL_itf_propsys_0000_0021 */ 3292 /* [local] */ 3293 3294 // Format a property value for display purposes 3295 PSSTDAPI PSFormatForDisplay( 3296 __in REFPROPERTYKEY propkey, 3297 __in REFPROPVARIANT propvar, 3298 __in PROPDESC_FORMAT_FLAGS pdfFlags, 3299 __out_ecount(cchText) LPWSTR pwszText, 3300 __in DWORD cchText); 3301 3302 PSSTDAPI PSFormatForDisplayAlloc( 3303 __in REFPROPERTYKEY key, 3304 __in REFPROPVARIANT propvar, 3305 __in PROPDESC_FORMAT_FLAGS pdff, 3306 __deref_out PWSTR *ppszDisplay); 3307 3308 PSSTDAPI PSFormatPropertyValue( 3309 __in IPropertyStore *pps, 3310 __in IPropertyDescription *ppd, 3311 __in PROPDESC_FORMAT_FLAGS pdff, 3312 __deref_out LPWSTR *ppszDisplay); 3313 3314 3315 #define PKEY_PIDSTR_MAX 10 // will take care of any long integer value 3316 #define GUIDSTRING_MAX (1 + 8 + 1 + 4 + 1 + 4 + 1 + 4 + 1 + 12 + 1 + 1) // "{12345678-1234-1234-1234-123456789012}" 3317 #define PKEYSTR_MAX (GUIDSTRING_MAX + 1 + PKEY_PIDSTR_MAX) 3318 3319 // Convert a PROPERTYKEY to and from a PWSTR 3320 PSSTDAPI PSStringFromPropertyKey( 3321 __in REFPROPERTYKEY pkey, 3322 __out_ecount(cch) LPWSTR psz, 3323 __in UINT cch); 3324 3325 PSSTDAPI PSPropertyKeyFromString( 3326 __in LPCWSTR pszString, 3327 __out PROPERTYKEY *pkey); 3328 3329 3330 // Creates an in-memory property store 3331 // Returns an IPropertyStore, IPersistSerializedPropStorage, and related interfaces interface 3332 PSSTDAPI PSCreateMemoryPropertyStore( 3333 __in REFIID riid, 3334 __deref_out void **ppv); 3335 3336 3337 // Create a read-only, delay-bind multiplexing property store 3338 // Returns an IPropertyStore interface or related interfaces 3339 PSSTDAPI PSCreateDelayedMultiplexPropertyStore( 3340 __in GETPROPERTYSTOREFLAGS flags, 3341 __in IDelayedPropertyStoreFactory *pdpsf, 3342 __in_ecount(cStores) const DWORD *rgStoreIds, 3343 __in DWORD cStores, 3344 __in REFIID riid, 3345 __deref_out void **ppv); 3346 3347 3348 // Create a read-only property store from one or more sources (which each must support either IPropertyStore or IPropertySetStorage) 3349 // Returns an IPropertyStore interface or related interfaces 3350 PSSTDAPI PSCreateMultiplexPropertyStore( 3351 __in_ecount(cStores) IUnknown **prgpunkStores, 3352 __in DWORD cStores, 3353 __in REFIID riid, 3354 __deref_out void **ppv); 3355 3356 3357 // Create a container for IPropertyChanges 3358 // Returns an IPropertyChangeArray interface 3359 PSSTDAPI PSCreatePropertyChangeArray( 3360 __in_ecount_opt(cChanges) const PROPERTYKEY *rgpropkey, 3361 __in_ecount_opt(cChanges) const PKA_FLAGS *rgflags, 3362 __in_ecount_opt(cChanges) const PROPVARIANT *rgpropvar, 3363 __in UINT cChanges, 3364 __in REFIID riid, 3365 __deref_out void **ppv); 3366 3367 3368 // Create a simple property change 3369 // Returns an IPropertyChange interface 3370 PSSTDAPI PSCreateSimplePropertyChange( 3371 __in PKA_FLAGS flags, 3372 __in REFPROPERTYKEY key, 3373 __in REFPROPVARIANT propvar, 3374 __in REFIID riid, 3375 __deref_out void **ppv); 3376 3377 3378 // Get a property description 3379 // Returns an IPropertyDescription interface 3380 PSSTDAPI PSGetPropertyDescription( 3381 __in REFPROPERTYKEY propkey, 3382 __in REFIID riid, 3383 __deref_out void **ppv); 3384 3385 PSSTDAPI PSGetPropertyDescriptionByName( 3386 __in LPCWSTR pszCanonicalName, 3387 __in REFIID riid, 3388 __deref_out void **ppv); 3389 3390 3391 // Lookup a per-machine registered file property handler 3392 PSSTDAPI PSLookupPropertyHandlerCLSID( 3393 __in PCWSTR pszFilePath, 3394 __out CLSID *pclsid); 3395 // Get a property handler, on Vista or downlevel to XP 3396 // punkItem is a shell item created with an SHCreateItemXXX API 3397 // Returns an IPropertyStore 3398 PSSTDAPI PSGetItemPropertyHandler( 3399 __in IUnknown *punkItem, 3400 __in BOOL fReadWrite, 3401 __in REFIID riid, 3402 __deref_out void **ppv); 3403 3404 3405 // Get a property handler, on Vista or downlevel to XP 3406 // punkItem is a shell item created with an SHCreateItemXXX API 3407 // punkCreateObject supports ICreateObject 3408 // Returns an IPropertyStore 3409 PSSTDAPI PSGetItemPropertyHandlerWithCreateObject( 3410 __in IUnknown *punkItem, 3411 __in BOOL fReadWrite, 3412 __in IUnknown *punkCreateObject, 3413 __in REFIID riid, 3414 __deref_out void **ppv); 3415 3416 3417 // Get or set a property value from a store 3418 PSSTDAPI PSGetPropertyValue( 3419 __in IPropertyStore *pps, 3420 __in IPropertyDescription *ppd, 3421 __out PROPVARIANT *ppropvar); 3422 3423 PSSTDAPI PSSetPropertyValue( 3424 __in IPropertyStore *pps, 3425 __in IPropertyDescription *ppd, 3426 __in REFPROPVARIANT propvar); 3427 3428 3429 // Interact with the set of property descriptions 3430 PSSTDAPI PSRegisterPropertySchema( 3431 __in PCWSTR pszPath); 3432 3433 PSSTDAPI PSUnregisterPropertySchema( 3434 __in PCWSTR pszPath); 3435 3436 PSSTDAPI PSRefreshPropertySchema(); 3437 3438 // Returns either: IPropertyDescriptionList or IEnumUnknown interfaces 3439 PSSTDAPI PSEnumeratePropertyDescriptions( 3440 __in PROPDESC_ENUMFILTER filterOn, 3441 __in REFIID riid, 3442 __deref_out void **ppv); 3443 3444 3445 // Convert between a PROPERTYKEY and its canonical name 3446 PSSTDAPI PSGetPropertyKeyFromName( 3447 __in PCWSTR pszName, 3448 __out PROPERTYKEY *ppropkey); 3449 3450 PSSTDAPI PSGetNameFromPropertyKey( 3451 __in REFPROPERTYKEY propkey, 3452 __deref_out PWSTR *ppszCanonicalName); 3453 3454 3455 // Coerce and canonicalize a property value 3456 PSSTDAPI PSCoerceToCanonicalValue( 3457 __in REFPROPERTYKEY key, 3458 __inout PROPVARIANT *ppropvar); 3459 3460 3461 // Convert a 'prop:' string into a list of property descriptions 3462 // Returns an IPropertyDescriptionList interface 3463 PSSTDAPI PSGetPropertyDescriptionListFromString( 3464 __in LPCWSTR pszPropList, 3465 __in REFIID riid, 3466 __deref_out void **ppv); 3467 3468 3469 // Wrap an IPropertySetStorage interface in an IPropertyStore interface 3470 // Returns an IPropertyStore or related interface 3471 PSSTDAPI PSCreatePropertyStoreFromPropertySetStorage( 3472 __in IPropertySetStorage *ppss, 3473 DWORD grfMode, 3474 REFIID riid, 3475 __deref_out void **ppv); 3476 3477 3478 // punkSource must support IPropertyStore or IPropertySetStorage 3479 // On success, the returned ppv is guaranteed to support IPropertyStore. 3480 // If punkSource already supports IPropertyStore, no wrapper is created. 3481 PSSTDAPI PSCreatePropertyStoreFromObject( 3482 __in IUnknown *punk, 3483 __in DWORD grfMode, 3484 __in REFIID riid, 3485 __deref_out void **ppv); 3486 3487 3488 // punkSource must support IPropertyStore 3489 // riid may be IPropertyStore, IPropertySetStorage, IPropertyStoreCapabilities, or IObjectProvider 3490 PSSTDAPI PSCreateAdapterFromPropertyStore( 3491 __in IPropertyStore *pps, 3492 __in REFIID riid, 3493 __deref_out void **ppv); 3494 3495 3496 // Talk to the property system using an interface 3497 // Returns an IPropertySystem interface 3498 PSSTDAPI PSGetPropertySystem( 3499 __in REFIID riid, 3500 __deref_out void **ppv); 3501 3502 3503 // Obtain a value from serialized property storage 3504 PSSTDAPI PSGetPropertyFromPropertyStorage( 3505 __in_bcount(cb) PCUSERIALIZEDPROPSTORAGE psps, 3506 __in DWORD cb, 3507 __in REFPROPERTYKEY rpkey, 3508 __out PROPVARIANT *ppropvar); 3509 3510 3511 // Obtain a named value from serialized property storage 3512 PSSTDAPI PSGetNamedPropertyFromPropertyStorage( 3513 __in_bcount(cb) PCUSERIALIZEDPROPSTORAGE psps, 3514 __in DWORD cb, 3515 __in LPCWSTR pszName, 3516 __out PROPVARIANT *ppropvar); 3517 3518 3519 3520 3521 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0021_v0_0_c_ifspec; 3522 extern RPC_IF_HANDLE __MIDL_itf_propsys_0000_0021_v0_0_s_ifspec; 3523 3524 3525 #ifndef __PropSysObjects_LIBRARY_DEFINED__ 3526 #define __PropSysObjects_LIBRARY_DEFINED__ 3527 3528 /* library PropSysObjects */ 3529 /* [version][lcid][uuid] */ 3530 3531 3532 EXTERN_C const IID LIBID_PropSysObjects; 3533 3534 EXTERN_C const CLSID CLSID_InMemoryPropertyStore; 3535 3536 #ifdef __cplusplus 3537 3538 class DECLSPEC_UUID("9a02e012-6303-4e1e-b9a1-630f802592c5") 3539 InMemoryPropertyStore; 3540 #endif 3541 3542 EXTERN_C const CLSID CLSID_PropertySystem; 3543 3544 #ifdef __cplusplus 3545 3546 class DECLSPEC_UUID("b8967f85-58ae-4f46-9fb2-5d7904798f4b") 3547 PropertySystem; 3548 #endif 3549 #endif /* __PropSysObjects_LIBRARY_DEFINED__ */ 3550 3551 /* Additional Prototypes for ALL interfaces */ 3552 3553 unsigned long __RPC_USER BSTR_UserSize( unsigned long *, unsigned long , BSTR * ); 3554 unsigned char * __RPC_USER BSTR_UserMarshal( unsigned long *, unsigned char *, BSTR * ); 3555 unsigned char * __RPC_USER BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * ); 3556 void __RPC_USER BSTR_UserFree( unsigned long *, BSTR * ); 3557 3558 unsigned long __RPC_USER LPSAFEARRAY_UserSize( unsigned long *, unsigned long , LPSAFEARRAY * ); 3559 unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal( unsigned long *, unsigned char *, LPSAFEARRAY * ); 3560 unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal(unsigned long *, unsigned char *, LPSAFEARRAY * ); 3561 void __RPC_USER LPSAFEARRAY_UserFree( unsigned long *, LPSAFEARRAY * ); 3562 3563 unsigned long __RPC_USER BSTR_UserSize64( unsigned long *, unsigned long , BSTR * ); 3564 unsigned char * __RPC_USER BSTR_UserMarshal64( unsigned long *, unsigned char *, BSTR * ); 3565 unsigned char * __RPC_USER BSTR_UserUnmarshal64(unsigned long *, unsigned char *, BSTR * ); 3566 void __RPC_USER BSTR_UserFree64( unsigned long *, BSTR * ); 3567 3568 unsigned long __RPC_USER LPSAFEARRAY_UserSize64( unsigned long *, unsigned long , LPSAFEARRAY * ); 3569 unsigned char * __RPC_USER LPSAFEARRAY_UserMarshal64( unsigned long *, unsigned char *, LPSAFEARRAY * ); 3570 unsigned char * __RPC_USER LPSAFEARRAY_UserUnmarshal64(unsigned long *, unsigned char *, LPSAFEARRAY * ); 3571 void __RPC_USER LPSAFEARRAY_UserFree64( unsigned long *, LPSAFEARRAY * ); 3572 3573 /* [local] */ HRESULT STDMETHODCALLTYPE IInitializeWithStream_Initialize_Proxy( 3574 IInitializeWithStream * This, 3575 /* [in] */ IStream *pstream, 3576 /* [in] */ DWORD grfMode); 3577 3578 3579 /* [call_as] */ HRESULT STDMETHODCALLTYPE IInitializeWithStream_Initialize_Stub( 3580 IInitializeWithStream * This, 3581 /* [in] */ __RPC__in_opt IStream *pstream, 3582 /* [in] */ DWORD grfMode); 3583 3584 /* [local] */ HRESULT STDMETHODCALLTYPE IPropertyDescription_CoerceToCanonicalValue_Proxy( 3585 IPropertyDescription * This, 3586 /* [out][in] */ PROPVARIANT *ppropvar); 3587 3588 3589 /* [call_as] */ HRESULT STDMETHODCALLTYPE IPropertyDescription_CoerceToCanonicalValue_Stub( 3590 IPropertyDescription * This, 3591 /* [in] */ __RPC__in REFPROPVARIANT propvar, 3592 /* [out] */ __RPC__out PROPVARIANT *ppropvar); 3593 3594 3595 3596 /* end of Additional Prototypes */ 3597 3598 #ifdef __cplusplus 3599 } 3600 #endif 3601 3602 #endif 3603 3604 3605