1 /*** Autogenerated by WIDL 0.1 from pstore.idl - Do not edit ***/
5 #ifndef __WIDL_PSTORE_H
6 #define __WIDL_PSTORE_H
11 #define PST_KEY_CURRENT_USER 0
12 #define PST_KEY_LOCAL_MACHINE 1
13 #define PST_E_OK 0x00000000L
14 #define PST_E_TYPE_EXISTS 0x800C0004L
15 #define PST_AUTHENTICODE 1
16 #define PST_BINARY_CHECK 2
17 #define PST_SECURITY_DESCRIPTOR 4
18 typedef DWORD PST_ACCESSMODE;
20 typedef DWORD PST_ACCESSCLAUSETYPE;
22 typedef DWORD PST_KEY;
24 typedef DWORD PST_PROVIDERCAPABILITIES;
26 typedef GUID PST_PROVIDERID, *PPST_PROVIDERID;
28 typedef struct _PST_PROVIDERINFO {
31 PST_PROVIDERCAPABILITIES Capabilities;
32 LPWSTR szProviderName;
33 } PST_PROVIDERINFO, *PPST_PROVIDERINFO;
35 typedef void *PPST_PROMPTIFO;
39 PST_ACCESSCLAUSETYPE ClauseType;
42 } PST_ACCESSCLAUSE, *PPST_ACCESSCLAUSE;
46 PST_ACCESSMODE AccessModeFlags;
48 PST_ACCESSCLAUSE *rgClauses;
49 } PST_ACCESSRULE, *PPST_ACCESSRULE;
54 PST_ACCESSRULE *rgRules;
55 } PST_ACCESSRULESET, *PPST_ACCESSRULESET;
60 } PST_TYPEINFO, *PPST_TYPEINFO;
67 } PST_PROMPTINFO, *PPST_PROMPTINFO;
69 #ifndef __IEnumPStoreItems_FWD_DEFINED__
70 #define __IEnumPStoreItems_FWD_DEFINED__
71 typedef struct IEnumPStoreItems IEnumPStoreItems;
74 /*****************************************************************************
75 * IEnumPStoreItems interface
77 #ifndef __IEnumPStoreItems_INTERFACE_DEFINED__
78 #define __IEnumPStoreItems_INTERFACE_DEFINED__
80 #if defined(__cplusplus) && !defined(CINTERFACE)
81 struct IEnumPStoreItems : public IUnknown
83 virtual HRESULT STDMETHODCALLTYPE Clone(
84 IEnumPStoreItems** ppenum) = 0;
86 virtual HRESULT STDMETHODCALLTYPE Next(
89 DWORD* pceltFetched) = 0;
91 virtual HRESULT STDMETHODCALLTYPE Reset(
94 virtual HRESULT STDMETHODCALLTYPE Skip(
99 typedef struct IEnumPStoreItemsVtbl IEnumPStoreItemsVtbl;
100 struct IEnumPStoreItems {
101 const IEnumPStoreItemsVtbl* lpVtbl;
103 struct IEnumPStoreItemsVtbl {
104 ICOM_MSVTABLE_COMPAT_FIELDS
106 /*** IUnknown methods ***/
107 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
108 IEnumPStoreItems* This,
112 ULONG (STDMETHODCALLTYPE *AddRef)(
113 IEnumPStoreItems* This);
115 ULONG (STDMETHODCALLTYPE *Release)(
116 IEnumPStoreItems* This);
118 /*** IEnumPStoreItems methods ***/
119 HRESULT (STDMETHODCALLTYPE *Clone)(
120 IEnumPStoreItems* This,
121 IEnumPStoreItems** ppenum);
123 HRESULT (STDMETHODCALLTYPE *Next)(
124 IEnumPStoreItems* This,
127 DWORD* pceltFetched);
129 HRESULT (STDMETHODCALLTYPE *Reset)(
130 IEnumPStoreItems* This);
132 HRESULT (STDMETHODCALLTYPE *Skip)(
133 IEnumPStoreItems* This,
139 /*** IUnknown methods ***/
140 #define IEnumPStoreItems_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
141 #define IEnumPStoreItems_AddRef(p) (p)->lpVtbl->AddRef(p)
142 #define IEnumPStoreItems_Release(p) (p)->lpVtbl->Release(p)
143 /*** IEnumPStoreItems methods ***/
144 #define IEnumPStoreItems_Clone(p,a) (p)->lpVtbl->Clone(p,a)
145 #define IEnumPStoreItems_Next(p,a,b,c) (p)->lpVtbl->Next(p,a,b,c)
146 #define IEnumPStoreItems_Reset(p) (p)->lpVtbl->Reset(p)
147 #define IEnumPStoreItems_Skip(p,a) (p)->lpVtbl->Skip(p,a)
152 #define IEnumPStoreItems_METHODS \
153 ICOM_MSVTABLE_COMPAT_FIELDS \
154 /*** IUnknown methods ***/ \
155 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
156 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
157 STDMETHOD_(ULONG,Release)(THIS) PURE; \
158 /*** IEnumPStoreItems methods ***/ \
159 STDMETHOD_(HRESULT,Clone)(THIS_ IEnumPStoreItems** ppenum) PURE; \
160 STDMETHOD_(HRESULT,Next)(THIS_ DWORD celt, LPWSTR* rgelt, DWORD* pceltFetched) PURE; \
161 STDMETHOD_(HRESULT,Reset)(THIS) PURE; \
162 STDMETHOD_(HRESULT,Skip)(THIS_ DWORD celt) PURE;
164 HRESULT CALLBACK IEnumPStoreItems_Clone_Proxy(
165 IEnumPStoreItems* This,
166 IEnumPStoreItems** ppenum);
167 void __RPC_STUB IEnumPStoreItems_Clone_Stub(
168 struct IRpcStubBuffer* This,
169 struct IRpcChannelBuffer* pRpcChannelBuffer,
170 PRPC_MESSAGE pRpcMessage,
171 DWORD* pdwStubPhase);
172 HRESULT CALLBACK IEnumPStoreItems_Next_Proxy(
173 IEnumPStoreItems* This,
176 DWORD* pceltFetched);
177 void __RPC_STUB IEnumPStoreItems_Next_Stub(
178 struct IRpcStubBuffer* This,
179 struct IRpcChannelBuffer* pRpcChannelBuffer,
180 PRPC_MESSAGE pRpcMessage,
181 DWORD* pdwStubPhase);
182 HRESULT CALLBACK IEnumPStoreItems_Reset_Proxy(
183 IEnumPStoreItems* This);
184 void __RPC_STUB IEnumPStoreItems_Reset_Stub(
185 struct IRpcStubBuffer* This,
186 struct IRpcChannelBuffer* pRpcChannelBuffer,
187 PRPC_MESSAGE pRpcMessage,
188 DWORD* pdwStubPhase);
189 HRESULT CALLBACK IEnumPStoreItems_Skip_Proxy(
190 IEnumPStoreItems* This,
192 void __RPC_STUB IEnumPStoreItems_Skip_Stub(
193 struct IRpcStubBuffer* This,
194 struct IRpcChannelBuffer* pRpcChannelBuffer,
195 PRPC_MESSAGE pRpcMessage,
196 DWORD* pdwStubPhase);
198 #endif /* __IEnumPStoreItems_INTERFACE_DEFINED__ */
200 #ifndef __IEnumPStoreTypes_FWD_DEFINED__
201 #define __IEnumPStoreTypes_FWD_DEFINED__
202 typedef struct IEnumPStoreTypes IEnumPStoreTypes;
205 /*****************************************************************************
206 * IEnumPStoreTypes interface
208 #ifndef __IEnumPStoreTypes_INTERFACE_DEFINED__
209 #define __IEnumPStoreTypes_INTERFACE_DEFINED__
211 #if defined(__cplusplus) && !defined(CINTERFACE)
212 struct IEnumPStoreTypes : public IUnknown
214 virtual HRESULT STDMETHODCALLTYPE Clone(
215 IEnumPStoreTypes** ppenum) = 0;
217 virtual HRESULT STDMETHODCALLTYPE Next(
220 DWORD* pceltFetched) = 0;
222 virtual HRESULT STDMETHODCALLTYPE Reset(
225 virtual HRESULT STDMETHODCALLTYPE Skip(
230 typedef struct IEnumPStoreTypesVtbl IEnumPStoreTypesVtbl;
231 struct IEnumPStoreTypes {
232 const IEnumPStoreTypesVtbl* lpVtbl;
234 struct IEnumPStoreTypesVtbl {
235 ICOM_MSVTABLE_COMPAT_FIELDS
237 /*** IUnknown methods ***/
238 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
239 IEnumPStoreTypes* This,
243 ULONG (STDMETHODCALLTYPE *AddRef)(
244 IEnumPStoreTypes* This);
246 ULONG (STDMETHODCALLTYPE *Release)(
247 IEnumPStoreTypes* This);
249 /*** IEnumPStoreTypes methods ***/
250 HRESULT (STDMETHODCALLTYPE *Clone)(
251 IEnumPStoreTypes* This,
252 IEnumPStoreTypes** ppenum);
254 HRESULT (STDMETHODCALLTYPE *Next)(
255 IEnumPStoreTypes* This,
258 DWORD* pceltFetched);
260 HRESULT (STDMETHODCALLTYPE *Reset)(
261 IEnumPStoreTypes* This);
263 HRESULT (STDMETHODCALLTYPE *Skip)(
264 IEnumPStoreTypes* This,
270 /*** IUnknown methods ***/
271 #define IEnumPStoreTypes_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
272 #define IEnumPStoreTypes_AddRef(p) (p)->lpVtbl->AddRef(p)
273 #define IEnumPStoreTypes_Release(p) (p)->lpVtbl->Release(p)
274 /*** IEnumPStoreTypes methods ***/
275 #define IEnumPStoreTypes_Clone(p,a) (p)->lpVtbl->Clone(p,a)
276 #define IEnumPStoreTypes_Next(p,a,b,c) (p)->lpVtbl->Next(p,a,b,c)
277 #define IEnumPStoreTypes_Reset(p) (p)->lpVtbl->Reset(p)
278 #define IEnumPStoreTypes_Skip(p,a) (p)->lpVtbl->Skip(p,a)
283 #define IEnumPStoreTypes_METHODS \
284 ICOM_MSVTABLE_COMPAT_FIELDS \
285 /*** IUnknown methods ***/ \
286 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
287 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
288 STDMETHOD_(ULONG,Release)(THIS) PURE; \
289 /*** IEnumPStoreTypes methods ***/ \
290 STDMETHOD_(HRESULT,Clone)(THIS_ IEnumPStoreTypes** ppenum) PURE; \
291 STDMETHOD_(HRESULT,Next)(THIS_ DWORD celt, LPWSTR* rgelt, DWORD* pceltFetched) PURE; \
292 STDMETHOD_(HRESULT,Reset)(THIS) PURE; \
293 STDMETHOD_(HRESULT,Skip)(THIS_ DWORD celt) PURE;
295 HRESULT CALLBACK IEnumPStoreTypes_Clone_Proxy(
296 IEnumPStoreTypes* This,
297 IEnumPStoreTypes** ppenum);
298 void __RPC_STUB IEnumPStoreTypes_Clone_Stub(
299 struct IRpcStubBuffer* This,
300 struct IRpcChannelBuffer* pRpcChannelBuffer,
301 PRPC_MESSAGE pRpcMessage,
302 DWORD* pdwStubPhase);
303 HRESULT CALLBACK IEnumPStoreTypes_Next_Proxy(
304 IEnumPStoreTypes* This,
307 DWORD* pceltFetched);
308 void __RPC_STUB IEnumPStoreTypes_Next_Stub(
309 struct IRpcStubBuffer* This,
310 struct IRpcChannelBuffer* pRpcChannelBuffer,
311 PRPC_MESSAGE pRpcMessage,
312 DWORD* pdwStubPhase);
313 HRESULT CALLBACK IEnumPStoreTypes_Reset_Proxy(
314 IEnumPStoreTypes* This);
315 void __RPC_STUB IEnumPStoreTypes_Reset_Stub(
316 struct IRpcStubBuffer* This,
317 struct IRpcChannelBuffer* pRpcChannelBuffer,
318 PRPC_MESSAGE pRpcMessage,
319 DWORD* pdwStubPhase);
320 HRESULT CALLBACK IEnumPStoreTypes_Skip_Proxy(
321 IEnumPStoreTypes* This,
323 void __RPC_STUB IEnumPStoreTypes_Skip_Stub(
324 struct IRpcStubBuffer* This,
325 struct IRpcChannelBuffer* pRpcChannelBuffer,
326 PRPC_MESSAGE pRpcMessage,
327 DWORD* pdwStubPhase);
329 #endif /* __IEnumPStoreTypes_INTERFACE_DEFINED__ */
331 #ifndef __IPStore_FWD_DEFINED__
332 #define __IPStore_FWD_DEFINED__
333 typedef struct IPStore IPStore;
336 /*****************************************************************************
339 #ifndef __IPStore_INTERFACE_DEFINED__
340 #define __IPStore_INTERFACE_DEFINED__
342 #if defined(__cplusplus) && !defined(CINTERFACE)
343 struct IPStore : public IUnknown
345 virtual HRESULT STDMETHODCALLTYPE GetInfo(
346 PPST_PROVIDERINFO* ppProperties) = 0;
348 virtual HRESULT STDMETHODCALLTYPE GetProvParam(
354 virtual HRESULT STDMETHODCALLTYPE SetProvParam(
360 virtual HRESULT STDMETHODCALLTYPE CreateType(
366 virtual HRESULT STDMETHODCALLTYPE GetTypeInfo(
369 PPST_TYPEINFO** ppInfo,
372 virtual HRESULT STDMETHODCALLTYPE DeleteType(
377 virtual HRESULT STDMETHODCALLTYPE CreateSubtype(
380 const GUID* pSubtype,
382 PPST_ACCESSRULESET pRules,
385 virtual HRESULT STDMETHODCALLTYPE GetSubtypeInfo(
388 const GUID* pSubtype,
389 PPST_TYPEINFO** ppInfo,
392 virtual HRESULT STDMETHODCALLTYPE DeleteSubtype(
395 const GUID* pSubtype,
398 virtual HRESULT STDMETHODCALLTYPE ReadAccessRuleset(
401 const GUID* pSubtype,
403 PPST_ACCESSRULESET** ppRules,
406 virtual HRESULT STDMETHODCALLTYPE WriteAccessRuleset(
409 const GUID* pSubtype,
411 PPST_ACCESSRULESET pRules,
414 virtual HRESULT STDMETHODCALLTYPE EnumTypes(
417 IEnumPStoreTypes** ppenum) = 0;
419 virtual HRESULT STDMETHODCALLTYPE EnumSubtypes(
423 IEnumPStoreTypes** ppenum) = 0;
425 virtual HRESULT STDMETHODCALLTYPE DeleteItem(
427 const GUID* pItemType,
428 const GUID* pItemSubType,
430 PPST_PROMPTINFO pPromptInfo,
433 virtual HRESULT STDMETHODCALLTYPE ReadItem(
435 const GUID* pItemType,
436 const GUID* pItemSubtype,
440 PPST_PROMPTIFO pPromptInfo,
443 virtual HRESULT STDMETHODCALLTYPE WriteItem(
445 const GUID* pItemType,
446 const GUID* pItemSubtype,
450 PPST_PROMPTIFO pPromptInfo,
451 DWORD dwDefaultConfirmationStyle,
454 virtual HRESULT STDMETHODCALLTYPE OpenItem(
456 const GUID* pItemType,
457 const GUID* pItemSubtype,
459 PST_ACCESSMODE ModeFlags,
460 PPST_PROMPTIFO pProomptInfo,
463 virtual HRESULT STDMETHODCALLTYPE CloseItem(
465 const GUID* pItemType,
466 const GUID* pItemSubtype,
470 virtual HRESULT STDMETHODCALLTYPE EnumItems(
472 const GUID* pItemType,
473 const GUID* pItemSubtype,
475 IEnumPStoreItems** ppenum) = 0;
479 typedef struct IPStoreVtbl IPStoreVtbl;
481 const IPStoreVtbl* lpVtbl;
484 ICOM_MSVTABLE_COMPAT_FIELDS
486 /*** IUnknown methods ***/
487 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
492 ULONG (STDMETHODCALLTYPE *AddRef)(
495 ULONG (STDMETHODCALLTYPE *Release)(
498 /*** IPStore methods ***/
499 HRESULT (STDMETHODCALLTYPE *GetInfo)(
501 PPST_PROVIDERINFO* ppProperties);
503 HRESULT (STDMETHODCALLTYPE *GetProvParam)(
510 HRESULT (STDMETHODCALLTYPE *SetProvParam)(
517 HRESULT (STDMETHODCALLTYPE *CreateType)(
524 HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
528 PPST_TYPEINFO** ppInfo,
531 HRESULT (STDMETHODCALLTYPE *DeleteType)(
537 HRESULT (STDMETHODCALLTYPE *CreateSubtype)(
541 const GUID* pSubtype,
543 PPST_ACCESSRULESET pRules,
546 HRESULT (STDMETHODCALLTYPE *GetSubtypeInfo)(
550 const GUID* pSubtype,
551 PPST_TYPEINFO** ppInfo,
554 HRESULT (STDMETHODCALLTYPE *DeleteSubtype)(
558 const GUID* pSubtype,
561 HRESULT (STDMETHODCALLTYPE *ReadAccessRuleset)(
565 const GUID* pSubtype,
567 PPST_ACCESSRULESET** ppRules,
570 HRESULT (STDMETHODCALLTYPE *WriteAccessRuleset)(
574 const GUID* pSubtype,
576 PPST_ACCESSRULESET pRules,
579 HRESULT (STDMETHODCALLTYPE *EnumTypes)(
583 IEnumPStoreTypes** ppenum);
585 HRESULT (STDMETHODCALLTYPE *EnumSubtypes)(
590 IEnumPStoreTypes** ppenum);
592 HRESULT (STDMETHODCALLTYPE *DeleteItem)(
595 const GUID* pItemType,
596 const GUID* pItemSubType,
598 PPST_PROMPTINFO pPromptInfo,
601 HRESULT (STDMETHODCALLTYPE *ReadItem)(
604 const GUID* pItemType,
605 const GUID* pItemSubtype,
609 PPST_PROMPTIFO pPromptInfo,
612 HRESULT (STDMETHODCALLTYPE *WriteItem)(
615 const GUID* pItemType,
616 const GUID* pItemSubtype,
620 PPST_PROMPTIFO pPromptInfo,
621 DWORD dwDefaultConfirmationStyle,
624 HRESULT (STDMETHODCALLTYPE *OpenItem)(
627 const GUID* pItemType,
628 const GUID* pItemSubtype,
630 PST_ACCESSMODE ModeFlags,
631 PPST_PROMPTIFO pProomptInfo,
634 HRESULT (STDMETHODCALLTYPE *CloseItem)(
637 const GUID* pItemType,
638 const GUID* pItemSubtype,
642 HRESULT (STDMETHODCALLTYPE *EnumItems)(
645 const GUID* pItemType,
646 const GUID* pItemSubtype,
648 IEnumPStoreItems** ppenum);
653 /*** IUnknown methods ***/
654 #define IPStore_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
655 #define IPStore_AddRef(p) (p)->lpVtbl->AddRef(p)
656 #define IPStore_Release(p) (p)->lpVtbl->Release(p)
657 /*** IPStore methods ***/
658 #define IPStore_GetInfo(p,a) (p)->lpVtbl->GetInfo(p,a)
659 #define IPStore_GetProvParam(p,a,b,c,d) (p)->lpVtbl->GetProvParam(p,a,b,c,d)
660 #define IPStore_SetProvParam(p,a,b,c,d) (p)->lpVtbl->SetProvParam(p,a,b,c,d)
661 #define IPStore_CreateType(p,a,b,c,d) (p)->lpVtbl->CreateType(p,a,b,c,d)
662 #define IPStore_GetTypeInfo(p,a,b,c,d) (p)->lpVtbl->GetTypeInfo(p,a,b,c,d)
663 #define IPStore_DeleteType(p,a,b,c) (p)->lpVtbl->DeleteType(p,a,b,c)
664 #define IPStore_CreateSubtype(p,a,b,c,d,e,f) (p)->lpVtbl->CreateSubtype(p,a,b,c,d,e,f)
665 #define IPStore_GetSubtypeInfo(p,a,b,c,d,e) (p)->lpVtbl->GetSubtypeInfo(p,a,b,c,d,e)
666 #define IPStore_DeleteSubtype(p,a,b,c,d) (p)->lpVtbl->DeleteSubtype(p,a,b,c,d)
667 #define IPStore_ReadAccessRuleset(p,a,b,c,d,e,f) (p)->lpVtbl->ReadAccessRuleset(p,a,b,c,d,e,f)
668 #define IPStore_WriteAccessRuleset(p,a,b,c,d,e,f) (p)->lpVtbl->WriteAccessRuleset(p,a,b,c,d,e,f)
669 #define IPStore_EnumTypes(p,a,b,c) (p)->lpVtbl->EnumTypes(p,a,b,c)
670 #define IPStore_EnumSubtypes(p,a,b,c,d) (p)->lpVtbl->EnumSubtypes(p,a,b,c,d)
671 #define IPStore_DeleteItem(p,a,b,c,d,e,f) (p)->lpVtbl->DeleteItem(p,a,b,c,d,e,f)
672 #define IPStore_ReadItem(p,a,b,c,d,e,f,g,h) (p)->lpVtbl->ReadItem(p,a,b,c,d,e,f,g,h)
673 #define IPStore_WriteItem(p,a,b,c,d,e,f,g,h,i) (p)->lpVtbl->WriteItem(p,a,b,c,d,e,f,g,h,i)
674 #define IPStore_OpenItem(p,a,b,c,d,e,f,g) (p)->lpVtbl->OpenItem(p,a,b,c,d,e,f,g)
675 #define IPStore_CloseItem(p,a,b,c,d,e) (p)->lpVtbl->CloseItem(p,a,b,c,d,e)
676 #define IPStore_EnumItems(p,a,b,c,d,e) (p)->lpVtbl->EnumItems(p,a,b,c,d,e)
681 #define IPStore_METHODS \
682 ICOM_MSVTABLE_COMPAT_FIELDS \
683 /*** IUnknown methods ***/ \
684 STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
685 STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
686 STDMETHOD_(ULONG,Release)(THIS) PURE; \
687 /*** IPStore methods ***/ \
688 STDMETHOD_(HRESULT,GetInfo)(THIS_ PPST_PROVIDERINFO* ppProperties) PURE; \
689 STDMETHOD_(HRESULT,GetProvParam)(THIS_ DWORD dwParam, DWORD* pcbData, BYTE** ppbData, DWORD dwFlags) PURE; \
690 STDMETHOD_(HRESULT,SetProvParam)(THIS_ DWORD dwParam, DWORD cbData, BYTE* pbData, DWORD* dwFlags) PURE; \
691 STDMETHOD_(HRESULT,CreateType)(THIS_ PST_KEY Key, const GUID* pType, PPST_TYPEINFO pInfo, DWORD dwFlags) PURE; \
692 STDMETHOD_(HRESULT,GetTypeInfo)(THIS_ PST_KEY Key, const GUID* pType, PPST_TYPEINFO** ppInfo, DWORD dwFlags) PURE; \
693 STDMETHOD_(HRESULT,DeleteType)(THIS_ PST_KEY Key, const GUID* pType, DWORD dwFlags) PURE; \
694 STDMETHOD_(HRESULT,CreateSubtype)(THIS_ PST_KEY Key, const GUID* pType, const GUID* pSubtype, PPST_TYPEINFO pInfo, PPST_ACCESSRULESET pRules, DWORD dwFlags) PURE; \
695 STDMETHOD_(HRESULT,GetSubtypeInfo)(THIS_ PST_KEY Key, const GUID* pType, const GUID* pSubtype, PPST_TYPEINFO** ppInfo, DWORD dwFlags) PURE; \
696 STDMETHOD_(HRESULT,DeleteSubtype)(THIS_ PST_KEY Key, const GUID* pType, const GUID* pSubtype, DWORD dwFlags) PURE; \
697 STDMETHOD_(HRESULT,ReadAccessRuleset)(THIS_ PST_KEY Key, const GUID* pType, const GUID* pSubtype, PPST_TYPEINFO pInfo, PPST_ACCESSRULESET** ppRules, DWORD dwFlags) PURE; \
698 STDMETHOD_(HRESULT,WriteAccessRuleset)(THIS_ PST_KEY Key, const GUID* pType, const GUID* pSubtype, PPST_TYPEINFO pInfo, PPST_ACCESSRULESET pRules, DWORD dwFlags) PURE; \
699 STDMETHOD_(HRESULT,EnumTypes)(THIS_ PST_KEY Key, DWORD dwFlags, IEnumPStoreTypes** ppenum) PURE; \
700 STDMETHOD_(HRESULT,EnumSubtypes)(THIS_ PST_KEY Key, const GUID* pType, DWORD dwFlags, IEnumPStoreTypes** ppenum) PURE; \
701 STDMETHOD_(HRESULT,DeleteItem)(THIS_ PST_KEY Key, const GUID* pItemType, const GUID* pItemSubType, LPCWSTR szItemName, PPST_PROMPTINFO pPromptInfo, DWORD dwFlags) PURE; \
702 STDMETHOD_(HRESULT,ReadItem)(THIS_ PST_KEY Key, const GUID* pItemType, const GUID* pItemSubtype, LPCWSTR szItemName, DWORD* cbData, BYTE** pbData, PPST_PROMPTIFO pPromptInfo, DWORD dwFlags) PURE; \
703 STDMETHOD_(HRESULT,WriteItem)(THIS_ PST_KEY Key, const GUID* pItemType, const GUID* pItemSubtype, LPCWSTR szItemName, DWORD cbData, BYTE* ppbData, PPST_PROMPTIFO pPromptInfo, DWORD dwDefaultConfirmationStyle, DWORD dwFlags) PURE; \
704 STDMETHOD_(HRESULT,OpenItem)(THIS_ PST_KEY Key, const GUID* pItemType, const GUID* pItemSubtype, LPCWSTR szItemName, PST_ACCESSMODE ModeFlags, PPST_PROMPTIFO pProomptInfo, DWORD dwFlags) PURE; \
705 STDMETHOD_(HRESULT,CloseItem)(THIS_ PST_KEY Key, const GUID* pItemType, const GUID* pItemSubtype, LPCWSTR* szItemName, DWORD dwFlags) PURE; \
706 STDMETHOD_(HRESULT,EnumItems)(THIS_ PST_KEY Key, const GUID* pItemType, const GUID* pItemSubtype, DWORD dwFlags, IEnumPStoreItems** ppenum) PURE;
708 HRESULT CALLBACK IPStore_GetInfo_Proxy(
710 PPST_PROVIDERINFO* ppProperties);
711 void __RPC_STUB IPStore_GetInfo_Stub(
712 struct IRpcStubBuffer* This,
713 struct IRpcChannelBuffer* pRpcChannelBuffer,
714 PRPC_MESSAGE pRpcMessage,
715 DWORD* pdwStubPhase);
716 HRESULT CALLBACK IPStore_GetProvParam_Proxy(
722 void __RPC_STUB IPStore_GetProvParam_Stub(
723 struct IRpcStubBuffer* This,
724 struct IRpcChannelBuffer* pRpcChannelBuffer,
725 PRPC_MESSAGE pRpcMessage,
726 DWORD* pdwStubPhase);
727 HRESULT CALLBACK IPStore_SetProvParam_Proxy(
733 void __RPC_STUB IPStore_SetProvParam_Stub(
734 struct IRpcStubBuffer* This,
735 struct IRpcChannelBuffer* pRpcChannelBuffer,
736 PRPC_MESSAGE pRpcMessage,
737 DWORD* pdwStubPhase);
738 HRESULT CALLBACK IPStore_CreateType_Proxy(
744 void __RPC_STUB IPStore_CreateType_Stub(
745 struct IRpcStubBuffer* This,
746 struct IRpcChannelBuffer* pRpcChannelBuffer,
747 PRPC_MESSAGE pRpcMessage,
748 DWORD* pdwStubPhase);
749 HRESULT CALLBACK IPStore_GetTypeInfo_Proxy(
753 PPST_TYPEINFO** ppInfo,
755 void __RPC_STUB IPStore_GetTypeInfo_Stub(
756 struct IRpcStubBuffer* This,
757 struct IRpcChannelBuffer* pRpcChannelBuffer,
758 PRPC_MESSAGE pRpcMessage,
759 DWORD* pdwStubPhase);
760 HRESULT CALLBACK IPStore_DeleteType_Proxy(
765 void __RPC_STUB IPStore_DeleteType_Stub(
766 struct IRpcStubBuffer* This,
767 struct IRpcChannelBuffer* pRpcChannelBuffer,
768 PRPC_MESSAGE pRpcMessage,
769 DWORD* pdwStubPhase);
770 HRESULT CALLBACK IPStore_CreateSubtype_Proxy(
774 const GUID* pSubtype,
776 PPST_ACCESSRULESET pRules,
778 void __RPC_STUB IPStore_CreateSubtype_Stub(
779 struct IRpcStubBuffer* This,
780 struct IRpcChannelBuffer* pRpcChannelBuffer,
781 PRPC_MESSAGE pRpcMessage,
782 DWORD* pdwStubPhase);
783 HRESULT CALLBACK IPStore_GetSubtypeInfo_Proxy(
787 const GUID* pSubtype,
788 PPST_TYPEINFO** ppInfo,
790 void __RPC_STUB IPStore_GetSubtypeInfo_Stub(
791 struct IRpcStubBuffer* This,
792 struct IRpcChannelBuffer* pRpcChannelBuffer,
793 PRPC_MESSAGE pRpcMessage,
794 DWORD* pdwStubPhase);
795 HRESULT CALLBACK IPStore_DeleteSubtype_Proxy(
799 const GUID* pSubtype,
801 void __RPC_STUB IPStore_DeleteSubtype_Stub(
802 struct IRpcStubBuffer* This,
803 struct IRpcChannelBuffer* pRpcChannelBuffer,
804 PRPC_MESSAGE pRpcMessage,
805 DWORD* pdwStubPhase);
806 HRESULT CALLBACK IPStore_ReadAccessRuleset_Proxy(
810 const GUID* pSubtype,
812 PPST_ACCESSRULESET** ppRules,
814 void __RPC_STUB IPStore_ReadAccessRuleset_Stub(
815 struct IRpcStubBuffer* This,
816 struct IRpcChannelBuffer* pRpcChannelBuffer,
817 PRPC_MESSAGE pRpcMessage,
818 DWORD* pdwStubPhase);
819 HRESULT CALLBACK IPStore_WriteAccessRuleset_Proxy(
823 const GUID* pSubtype,
825 PPST_ACCESSRULESET pRules,
827 void __RPC_STUB IPStore_WriteAccessRuleset_Stub(
828 struct IRpcStubBuffer* This,
829 struct IRpcChannelBuffer* pRpcChannelBuffer,
830 PRPC_MESSAGE pRpcMessage,
831 DWORD* pdwStubPhase);
832 HRESULT CALLBACK IPStore_EnumTypes_Proxy(
836 IEnumPStoreTypes** ppenum);
837 void __RPC_STUB IPStore_EnumTypes_Stub(
838 struct IRpcStubBuffer* This,
839 struct IRpcChannelBuffer* pRpcChannelBuffer,
840 PRPC_MESSAGE pRpcMessage,
841 DWORD* pdwStubPhase);
842 HRESULT CALLBACK IPStore_EnumSubtypes_Proxy(
847 IEnumPStoreTypes** ppenum);
848 void __RPC_STUB IPStore_EnumSubtypes_Stub(
849 struct IRpcStubBuffer* This,
850 struct IRpcChannelBuffer* pRpcChannelBuffer,
851 PRPC_MESSAGE pRpcMessage,
852 DWORD* pdwStubPhase);
853 HRESULT CALLBACK IPStore_DeleteItem_Proxy(
856 const GUID* pItemType,
857 const GUID* pItemSubType,
859 PPST_PROMPTINFO pPromptInfo,
861 void __RPC_STUB IPStore_DeleteItem_Stub(
862 struct IRpcStubBuffer* This,
863 struct IRpcChannelBuffer* pRpcChannelBuffer,
864 PRPC_MESSAGE pRpcMessage,
865 DWORD* pdwStubPhase);
866 HRESULT CALLBACK IPStore_ReadItem_Proxy(
869 const GUID* pItemType,
870 const GUID* pItemSubtype,
874 PPST_PROMPTIFO pPromptInfo,
876 void __RPC_STUB IPStore_ReadItem_Stub(
877 struct IRpcStubBuffer* This,
878 struct IRpcChannelBuffer* pRpcChannelBuffer,
879 PRPC_MESSAGE pRpcMessage,
880 DWORD* pdwStubPhase);
881 HRESULT CALLBACK IPStore_WriteItem_Proxy(
884 const GUID* pItemType,
885 const GUID* pItemSubtype,
889 PPST_PROMPTIFO pPromptInfo,
890 DWORD dwDefaultConfirmationStyle,
892 void __RPC_STUB IPStore_WriteItem_Stub(
893 struct IRpcStubBuffer* This,
894 struct IRpcChannelBuffer* pRpcChannelBuffer,
895 PRPC_MESSAGE pRpcMessage,
896 DWORD* pdwStubPhase);
897 HRESULT CALLBACK IPStore_OpenItem_Proxy(
900 const GUID* pItemType,
901 const GUID* pItemSubtype,
903 PST_ACCESSMODE ModeFlags,
904 PPST_PROMPTIFO pProomptInfo,
906 void __RPC_STUB IPStore_OpenItem_Stub(
907 struct IRpcStubBuffer* This,
908 struct IRpcChannelBuffer* pRpcChannelBuffer,
909 PRPC_MESSAGE pRpcMessage,
910 DWORD* pdwStubPhase);
911 HRESULT CALLBACK IPStore_CloseItem_Proxy(
914 const GUID* pItemType,
915 const GUID* pItemSubtype,
918 void __RPC_STUB IPStore_CloseItem_Stub(
919 struct IRpcStubBuffer* This,
920 struct IRpcChannelBuffer* pRpcChannelBuffer,
921 PRPC_MESSAGE pRpcMessage,
922 DWORD* pdwStubPhase);
923 HRESULT CALLBACK IPStore_EnumItems_Proxy(
926 const GUID* pItemType,
927 const GUID* pItemSubtype,
929 IEnumPStoreItems** ppenum);
930 void __RPC_STUB IPStore_EnumItems_Stub(
931 struct IRpcStubBuffer* This,
932 struct IRpcChannelBuffer* pRpcChannelBuffer,
933 PRPC_MESSAGE pRpcMessage,
934 DWORD* pdwStubPhase);
936 #endif /* __IPStore_INTERFACE_DEFINED__ */
941 #endif /* __WIDL_PSTORE_H */