ReactOS  0.4.15-dev-1397-g19779b3
pstorec.c File Reference
#include <stdarg.h>
#include "windef.h"
#include "winbase.h"
#include "winuser.h"
#include "initguid.h"
#include "ole2.h"
#include "pstore.h"
#include "wine/debug.h"
Include dependency graph for pstorec.c:

Go to the source code of this file.

Classes

struct  PStore_impl
 

Macros

#define COBJMACROS
 

Functions

 WINE_DEFAULT_DEBUG_CHANNEL (pstores)
 
static PStore_implimpl_from_IPStore (IPStore *iface)
 
BOOL WINAPI DllMain (HINSTANCE hinst, DWORD fdwReason, LPVOID fImpLoad)
 
static HRESULT WINAPI PStore_fnQueryInterface (IPStore *iface, REFIID riid, LPVOID *ppvObj)
 
static ULONG WINAPI PStore_fnAddRef (IPStore *iface)
 
static ULONG WINAPI PStore_fnRelease (IPStore *iface)
 
static HRESULT WINAPI PStore_fnGetInfo (IPStore *iface, PPST_PROVIDERINFO *ppProperties)
 
static HRESULT WINAPI PStore_fnGetProvParam (IPStore *iface, DWORD dwParam, DWORD *pcbData, BYTE **ppbData, DWORD dwFlags)
 
static HRESULT WINAPI PStore_fnSetProvParam (IPStore *This, DWORD dwParam, DWORD cbData, BYTE *pbData, DWORD *dwFlags)
 
static HRESULT WINAPI PStore_fnCreateType (IPStore *This, PST_KEY Key, const GUID *pType, PPST_TYPEINFO pInfo, DWORD dwFlags)
 
static HRESULT WINAPI PStore_fnGetTypeInfo (IPStore *This, PST_KEY Key, const GUID *pType, PPST_TYPEINFO **ppInfo, DWORD dwFlags)
 
static HRESULT WINAPI PStore_fnDeleteType (IPStore *This, PST_KEY Key, const GUID *pType, DWORD dwFlags)
 
static HRESULT WINAPI PStore_fnCreateSubtype (IPStore *This, PST_KEY Key, const GUID *pType, const GUID *pSubtype, PPST_TYPEINFO pInfo, PPST_ACCESSRULESET pRules, DWORD dwFlags)
 
static HRESULT WINAPI PStore_fnGetSubtypeInfo (IPStore *This, PST_KEY Key, const GUID *pType, const GUID *pSubtype, PPST_TYPEINFO **ppInfo, DWORD dwFlags)
 
static HRESULT WINAPI PStore_fnDeleteSubtype (IPStore *This, PST_KEY Key, const GUID *pType, const GUID *pSubtype, DWORD dwFlags)
 
static HRESULT WINAPI PStore_fnReadAccessRuleset (IPStore *This, PST_KEY Key, const GUID *pType, const GUID *pSubtype, PPST_TYPEINFO pInfo, PPST_ACCESSRULESET **ppRules, DWORD dwFlags)
 
static HRESULT WINAPI PStore_fnWriteAccessRuleset (IPStore *This, PST_KEY Key, const GUID *pType, const GUID *pSubtype, PPST_TYPEINFO pInfo, PPST_ACCESSRULESET pRules, DWORD dwFlags)
 
static HRESULT WINAPI PStore_fnEnumTypes (IPStore *This, PST_KEY Key, DWORD dwFlags, IEnumPStoreTypes **ppenum)
 
static HRESULT WINAPI PStore_fnEnumSubtypes (IPStore *This, PST_KEY Key, const GUID *pType, DWORD dwFlags, IEnumPStoreTypes **ppenum)
 
static HRESULT WINAPI PStore_fnDeleteItem (IPStore *This, PST_KEY Key, const GUID *pItemType, const GUID *pItemSubType, LPCWSTR szItemName, PPST_PROMPTINFO pPromptInfo, DWORD dwFlags)
 
static HRESULT WINAPI PStore_fnReadItem (IPStore *This, PST_KEY Key, const GUID *pItemType, const GUID *pItemSubtype, LPCWSTR szItemName, DWORD *cbData, BYTE **pbData, PPST_PROMPTINFO pPromptInfo, DWORD dwFlags)
 
static HRESULT WINAPI PStore_fnWriteItem (IPStore *This, PST_KEY Key, const GUID *pItemType, const GUID *pItemSubtype, LPCWSTR szItemName, DWORD cbData, BYTE *ppbData, PPST_PROMPTINFO pPromptInfo, DWORD dwDefaultConfirmationStyle, DWORD dwFlags)
 
static HRESULT WINAPI PStore_fnOpenItem (IPStore *This, PST_KEY Key, const GUID *pItemType, const GUID *pItemSubtype, LPCWSTR szItemName, PST_ACCESSMODE ModeFlags, PPST_PROMPTINFO pPromptInfo, DWORD dwFlags)
 
static HRESULT WINAPI PStore_fnCloseItem (IPStore *This, PST_KEY Key, const GUID *pItemType, const GUID *pItemSubtype, LPCWSTR *szItemName, DWORD dwFlags)
 
static HRESULT WINAPI PStore_fnEnumItems (IPStore *This, PST_KEY Key, const GUID *pItemType, const GUID *pItemSubtype, DWORD dwFlags, IEnumPStoreItems **ppenum)
 
HRESULT WINAPI PStoreCreateInstance (IPStore **ppProvider, PST_PROVIDERID *pProviderID, void *pReserved, DWORD dwFlags)
 
HRESULT WINAPI DllRegisterServer (void)
 
HRESULT WINAPI DllUnregisterServer (void)
 
HRESULT WINAPI DllGetClassObject (REFCLSID rclsid, REFIID iid, LPVOID *ppv)
 
HRESULT WINAPI DllCanUnloadNow (void)
 

Variables

static const IPStoreVtbl pstores_vtbl
 

Macro Definition Documentation

◆ COBJMACROS

#define COBJMACROS

Definition at line 23 of file pstorec.c.

Function Documentation

◆ DllCanUnloadNow()

HRESULT WINAPI DllCanUnloadNow ( void  )

Definition at line 394 of file pstorec.c.

395 {
396  return S_FALSE;
397 }
#define S_FALSE
Definition: winerror.h:2357

◆ DllGetClassObject()

HRESULT WINAPI DllGetClassObject ( REFCLSID  rclsid,
REFIID  iid,
LPVOID ppv 
)

Definition at line 388 of file pstorec.c.

389 {
390  FIXME("%s %s %p\n", debugstr_guid(rclsid), debugstr_guid(iid), ppv);
392 }
REFIID LPVOID * ppv
Definition: atlbase.h:39
#define CLASS_E_CLASSNOTAVAILABLE
Definition: winerror.h:2663
#define FIXME(fmt,...)
Definition: debug.h:111
#define debugstr_guid
Definition: kernel32.h:35

◆ DllMain()

BOOL WINAPI DllMain ( HINSTANCE  hinst,
DWORD  fdwReason,
LPVOID  fImpLoad 
)

Definition at line 46 of file pstorec.c.

47 {
48  TRACE("%p %x %p\n", hinst, fdwReason, fImpLoad);
49 
50  switch (fdwReason)
51  {
52  case DLL_WINE_PREATTACH:
53  return FALSE; /* prefer native version */
54  case DLL_PROCESS_ATTACH:
56  break;
57  }
58  return TRUE;
59 }
#define TRUE
Definition: types.h:120
BOOL WINAPI DisableThreadLibraryCalls(IN HMODULE hLibModule)
Definition: loader.c:85
#define DLL_PROCESS_ATTACH
Definition: compat.h:131
#define FALSE
Definition: types.h:117
#define TRACE(s)
Definition: solgame.cpp:4
DWORD LPVOID fImpLoad
Definition: misc.cpp:155
static HINSTANCE hinst
Definition: edit.c:551

◆ DllRegisterServer()

HRESULT WINAPI DllRegisterServer ( void  )

Definition at line 373 of file pstorec.c.

374 {
375  FIXME("\n");
376  return S_OK;
377 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define S_OK
Definition: intsafe.h:51

◆ DllUnregisterServer()

HRESULT WINAPI DllUnregisterServer ( void  )

Definition at line 379 of file pstorec.c.

380 {
381  FIXME("\n");
382  return S_OK;
383 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define S_OK
Definition: intsafe.h:51

◆ impl_from_IPStore()

static PStore_impl* impl_from_IPStore ( IPStore *  iface)
inlinestatic

Definition at line 41 of file pstorec.c.

42 {
43  return CONTAINING_RECORD(iface, PStore_impl, IPStore_iface);
44 }
PFLT_MESSAGE_WAITER_QUEUE CONTAINING_RECORD(Csq, DEVICE_EXTENSION, IrpQueue)) -> WaiterQ.mLock) _IRQL_raises_(DISPATCH_LEVEL) VOID NTAPI FltpAcquireMessageWaiterLock(_In_ PIO_CSQ Csq, _Out_ PKIRQL Irql)
Definition: Messaging.c:560

Referenced by PStore_fnAddRef(), PStore_fnQueryInterface(), and PStore_fnRelease().

◆ PStore_fnAddRef()

static ULONG WINAPI PStore_fnAddRef ( IPStore *  iface)
static

Definition at line 92 of file pstorec.c.

93 {
95 
96  TRACE("%p %u\n", This, This->ref);
97 
98  return InterlockedIncrement( &This->ref );
99 }
#define TRACE(s)
Definition: solgame.cpp:4
static PStore_impl * impl_from_IPStore(IPStore *iface)
Definition: pstorec.c:41
#define InterlockedIncrement
Definition: armddk.h:53

◆ PStore_fnCloseItem()

static HRESULT WINAPI PStore_fnCloseItem ( IPStore *  This,
PST_KEY  Key,
const GUID pItemType,
const GUID pItemSubtype,
LPCWSTR szItemName,
DWORD  dwFlags 
)
static

Definition at line 308 of file pstorec.c.

311 {
312  FIXME("\n");
313  return E_NOTIMPL;
314 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ PStore_fnCreateSubtype()

static HRESULT WINAPI PStore_fnCreateSubtype ( IPStore *  This,
PST_KEY  Key,
const GUID pType,
const GUID pSubtype,
PPST_TYPEINFO  pInfo,
PPST_ACCESSRULESET  pRules,
DWORD  dwFlags 
)
static

Definition at line 182 of file pstorec.c.

185 {
186  FIXME("%p %08x %s %s %p %p %08x\n", This, Key, debugstr_guid(pType),
187  debugstr_guid(pSubtype), pInfo, pRules, dwFlags);
188  return E_NOTIMPL;
189 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define debugstr_guid
Definition: kernel32.h:35
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1175
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ PStore_fnCreateType()

static HRESULT WINAPI PStore_fnCreateType ( IPStore *  This,
PST_KEY  Key,
const GUID pType,
PPST_TYPEINFO  pInfo,
DWORD  dwFlags 
)
static

Definition at line 150 of file pstorec.c.

152 {
153  FIXME("%p %08x %s %p(%d,%s) %08x\n", This, Key, debugstr_guid(pType),
154  pInfo, pInfo->cbSize, debugstr_w(pInfo->szDisplayName), dwFlags);
155 
156  return E_NOTIMPL;
157 }
#define debugstr_w
Definition: kernel32.h:32
#define FIXME(fmt,...)
Definition: debug.h:111
#define debugstr_guid
Definition: kernel32.h:35
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1175
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ PStore_fnDeleteItem()

static HRESULT WINAPI PStore_fnDeleteItem ( IPStore *  This,
PST_KEY  Key,
const GUID pItemType,
const GUID pItemSubType,
LPCWSTR  szItemName,
PPST_PROMPTINFO  pPromptInfo,
DWORD  dwFlags 
)
static

Definition at line 258 of file pstorec.c.

261 {
262  FIXME("\n");
263  return E_NOTIMPL;
264 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ PStore_fnDeleteSubtype()

static HRESULT WINAPI PStore_fnDeleteSubtype ( IPStore *  This,
PST_KEY  Key,
const GUID pType,
const GUID pSubtype,
DWORD  dwFlags 
)
static

Definition at line 205 of file pstorec.c.

207 {
208  FIXME("%p %u %s %s %08x\n", This, Key,
209  debugstr_guid(pType), debugstr_guid(pSubtype), dwFlags);
210  return E_NOTIMPL;
211 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define debugstr_guid
Definition: kernel32.h:35
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1175
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ PStore_fnDeleteType()

static HRESULT WINAPI PStore_fnDeleteType ( IPStore *  This,
PST_KEY  Key,
const GUID pType,
DWORD  dwFlags 
)
static

Definition at line 172 of file pstorec.c.

174 {
175  FIXME("%p %d %s %08x\n", This, Key, debugstr_guid(pType), dwFlags);
176  return E_NOTIMPL;
177 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define debugstr_guid
Definition: kernel32.h:35
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1175
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ PStore_fnEnumItems()

static HRESULT WINAPI PStore_fnEnumItems ( IPStore *  This,
PST_KEY  Key,
const GUID pItemType,
const GUID pItemSubtype,
DWORD  dwFlags,
IEnumPStoreItems **  ppenum 
)
static

Definition at line 319 of file pstorec.c.

322 {
323  FIXME("\n");
324  return E_NOTIMPL;
325 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ PStore_fnEnumSubtypes()

static HRESULT WINAPI PStore_fnEnumSubtypes ( IPStore *  This,
PST_KEY  Key,
const GUID pType,
DWORD  dwFlags,
IEnumPStoreTypes **  ppenum 
)
static

Definition at line 248 of file pstorec.c.

250 {
251  FIXME("\n");
252  return E_NOTIMPL;
253 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ PStore_fnEnumTypes()

static HRESULT WINAPI PStore_fnEnumTypes ( IPStore *  This,
PST_KEY  Key,
DWORD  dwFlags,
IEnumPStoreTypes **  ppenum 
)
static

Definition at line 238 of file pstorec.c.

240 {
241  FIXME("\n");
242  return E_NOTIMPL;
243 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ PStore_fnGetInfo()

static HRESULT WINAPI PStore_fnGetInfo ( IPStore *  iface,
PPST_PROVIDERINFO *  ppProperties 
)
static

Definition at line 121 of file pstorec.c.

122 {
123  FIXME("\n");
124  return E_NOTIMPL;
125 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ PStore_fnGetProvParam()

static HRESULT WINAPI PStore_fnGetProvParam ( IPStore *  iface,
DWORD  dwParam,
DWORD pcbData,
BYTE **  ppbData,
DWORD  dwFlags 
)
static

Definition at line 130 of file pstorec.c.

132 {
133  FIXME("\n");
134  return E_NOTIMPL;
135 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ PStore_fnGetSubtypeInfo()

static HRESULT WINAPI PStore_fnGetSubtypeInfo ( IPStore *  This,
PST_KEY  Key,
const GUID pType,
const GUID pSubtype,
PPST_TYPEINFO **  ppInfo,
DWORD  dwFlags 
)
static

Definition at line 194 of file pstorec.c.

197 {
198  FIXME("\n");
199  return E_NOTIMPL;
200 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ PStore_fnGetTypeInfo()

static HRESULT WINAPI PStore_fnGetTypeInfo ( IPStore *  This,
PST_KEY  Key,
const GUID pType,
PPST_TYPEINFO **  ppInfo,
DWORD  dwFlags 
)
static

Definition at line 162 of file pstorec.c.

164 {
165  FIXME("\n");
166  return E_NOTIMPL;
167 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ PStore_fnOpenItem()

static HRESULT WINAPI PStore_fnOpenItem ( IPStore *  This,
PST_KEY  Key,
const GUID pItemType,
const GUID pItemSubtype,
LPCWSTR  szItemName,
PST_ACCESSMODE  ModeFlags,
PPST_PROMPTINFO  pPromptInfo,
DWORD  dwFlags 
)
static

Definition at line 296 of file pstorec.c.

299 {
300  FIXME("(%p,%08x,%s,%s,%s,%08x,%p,%08x) stub\n", This, Key, debugstr_guid(pItemType),
301  debugstr_guid(pItemSubtype), debugstr_w(szItemName), ModeFlags, pPromptInfo, dwFlags);
302  return E_NOTIMPL;
303 }
#define debugstr_w
Definition: kernel32.h:32
#define FIXME(fmt,...)
Definition: debug.h:111
#define debugstr_guid
Definition: kernel32.h:35
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1175
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ PStore_fnQueryInterface()

static HRESULT WINAPI PStore_fnQueryInterface ( IPStore *  iface,
REFIID  riid,
LPVOID ppvObj 
)
static

Definition at line 64 of file pstorec.c.

68 {
70 
71  TRACE("%p %s %p\n", This, debugstr_guid(riid), ppvObj);
72 
73  *ppvObj = NULL;
74 
75  if (IsEqualIID(riid, &IID_IPStore) || IsEqualIID(riid, &IID_IUnknown))
76  {
77  *ppvObj = &This->IPStore_iface;
78  }
79 
80  if (*ppvObj)
81  {
82  IUnknown_AddRef((IUnknown*)(*ppvObj));
83  return S_OK;
84  }
85  TRACE("-- Interface: E_NOINTERFACE\n");
86  return E_NOINTERFACE;
87 }
#define E_NOINTERFACE
Definition: winerror.h:2364
REFIID riid
Definition: precomp.h:44
#define debugstr_guid
Definition: kernel32.h:35
#define TRACE(s)
Definition: solgame.cpp:4
const GUID IID_IUnknown
static PStore_impl * impl_from_IPStore(IPStore *iface)
Definition: pstorec.c:41
#define S_OK
Definition: intsafe.h:51
#define NULL
Definition: types.h:112
#define IsEqualIID(riid1, riid2)
Definition: guiddef.h:95

◆ PStore_fnReadAccessRuleset()

static HRESULT WINAPI PStore_fnReadAccessRuleset ( IPStore *  This,
PST_KEY  Key,
const GUID pType,
const GUID pSubtype,
PPST_TYPEINFO  pInfo,
PPST_ACCESSRULESET **  ppRules,
DWORD  dwFlags 
)
static

Definition at line 216 of file pstorec.c.

219 {
220  FIXME("\n");
221  return E_NOTIMPL;
222 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ PStore_fnReadItem()

static HRESULT WINAPI PStore_fnReadItem ( IPStore *  This,
PST_KEY  Key,
const GUID pItemType,
const GUID pItemSubtype,
LPCWSTR  szItemName,
DWORD cbData,
BYTE **  pbData,
PPST_PROMPTINFO  pPromptInfo,
DWORD  dwFlags 
)
static

Definition at line 269 of file pstorec.c.

272 {
273  FIXME("%p %08x %s %s %s %p %p %p %08x\n", This, Key,
274  debugstr_guid(pItemType), debugstr_guid(pItemSubtype),
275  debugstr_w(szItemName), cbData, pbData, pPromptInfo, dwFlags);
276  return E_NOTIMPL;
277 }
#define debugstr_w
Definition: kernel32.h:32
#define FIXME(fmt,...)
Definition: debug.h:111
#define debugstr_guid
Definition: kernel32.h:35
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1175
#define E_NOTIMPL
Definition: ddrawi.h:99
_In_ HCRYPTHASH _In_ BOOL _In_ DWORD _Inout_updates_bytes_to_ pdwDataLen BYTE * pbData
Definition: wincrypt.h:4201

◆ PStore_fnRelease()

static ULONG WINAPI PStore_fnRelease ( IPStore *  iface)
static

Definition at line 104 of file pstorec.c.

105 {
107  LONG ref;
108 
109  TRACE("%p %u\n", This, This->ref);
110 
111  ref = InterlockedDecrement( &This->ref );
112  if( !ref )
113  HeapFree( GetProcessHeap(), 0, This );
114 
115  return ref;
116 }
Definition: send.c:48
long LONG
Definition: pedump.c:60
GLenum GLint ref
Definition: glext.h:6028
#define TRACE(s)
Definition: solgame.cpp:4
#define GetProcessHeap()
Definition: compat.h:595
static PStore_impl * impl_from_IPStore(IPStore *iface)
Definition: pstorec.c:41
#define InterlockedDecrement
Definition: armddk.h:52
#define HeapFree(x, y, z)
Definition: compat.h:594

◆ PStore_fnSetProvParam()

static HRESULT WINAPI PStore_fnSetProvParam ( IPStore *  This,
DWORD  dwParam,
DWORD  cbData,
BYTE pbData,
DWORD dwFlags 
)
static

Definition at line 140 of file pstorec.c.

142 {
143  FIXME("\n");
144  return E_NOTIMPL;
145 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ PStore_fnWriteAccessRuleset()

static HRESULT WINAPI PStore_fnWriteAccessRuleset ( IPStore *  This,
PST_KEY  Key,
const GUID pType,
const GUID pSubtype,
PPST_TYPEINFO  pInfo,
PPST_ACCESSRULESET  pRules,
DWORD  dwFlags 
)
static

Definition at line 227 of file pstorec.c.

230 {
231  FIXME("\n");
232  return E_NOTIMPL;
233 }
#define FIXME(fmt,...)
Definition: debug.h:111
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ PStore_fnWriteItem()

static HRESULT WINAPI PStore_fnWriteItem ( IPStore *  This,
PST_KEY  Key,
const GUID pItemType,
const GUID pItemSubtype,
LPCWSTR  szItemName,
DWORD  cbData,
BYTE ppbData,
PPST_PROMPTINFO  pPromptInfo,
DWORD  dwDefaultConfirmationStyle,
DWORD  dwFlags 
)
static

Definition at line 282 of file pstorec.c.

286 {
287  FIXME("%p %08x %s %s %s %d %p %p %08x\n", This, Key,
288  debugstr_guid(pItemType), debugstr_guid(pItemSubtype),
289  debugstr_w(szItemName), cbData, ppbData, pPromptInfo, dwFlags);
290  return E_NOTIMPL;
291 }
#define debugstr_w
Definition: kernel32.h:32
#define FIXME(fmt,...)
Definition: debug.h:111
#define debugstr_guid
Definition: kernel32.h:35
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1175
#define E_NOTIMPL
Definition: ddrawi.h:99

◆ PStoreCreateInstance()

HRESULT WINAPI PStoreCreateInstance ( IPStore **  ppProvider,
PST_PROVIDERID pProviderID,
void pReserved,
DWORD  dwFlags 
)

Definition at line 354 of file pstorec.c.

356 {
357  PStore_impl *ips;
358 
359  TRACE("%p %s %p %08x\n", ppProvider, debugstr_guid(pProviderID), pReserved, dwFlags);
360 
361  ips = HeapAlloc( GetProcessHeap(), 0, sizeof (PStore_impl) );
362  if( !ips )
363  return E_OUTOFMEMORY;
364 
365  ips->IPStore_iface.lpVtbl = &pstores_vtbl;
366  ips->ref = 1;
367 
368  *ppProvider = &ips->IPStore_iface;
369 
370  return S_OK;
371 }
#define E_OUTOFMEMORY
Definition: ddrawi.h:100
#define debugstr_guid
Definition: kernel32.h:35
#define TRACE(s)
Definition: solgame.cpp:4
#define GetProcessHeap()
Definition: compat.h:595
PVOID WINAPI HeapAlloc(HANDLE, DWORD, SIZE_T)
IPStore IPStore_iface
Definition: pstorec.c:37
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1175
#define S_OK
Definition: intsafe.h:51
LONG ref
Definition: pstorec.c:38
static const IPStoreVtbl pstores_vtbl
Definition: pstorec.c:328

◆ WINE_DEFAULT_DEBUG_CHANNEL()

WINE_DEFAULT_DEBUG_CHANNEL ( pstores  )

Variable Documentation

◆ pstores_vtbl

const IPStoreVtbl pstores_vtbl
static
Initial value:
=
{
}
static HRESULT WINAPI PStore_fnReadItem(IPStore *This, PST_KEY Key, const GUID *pItemType, const GUID *pItemSubtype, LPCWSTR szItemName, DWORD *cbData, BYTE **pbData, PPST_PROMPTINFO pPromptInfo, DWORD dwFlags)
Definition: pstorec.c:269
static HRESULT WINAPI PStore_fnEnumTypes(IPStore *This, PST_KEY Key, DWORD dwFlags, IEnumPStoreTypes **ppenum)
Definition: pstorec.c:238
static HRESULT WINAPI PStore_fnWriteItem(IPStore *This, PST_KEY Key, const GUID *pItemType, const GUID *pItemSubtype, LPCWSTR szItemName, DWORD cbData, BYTE *ppbData, PPST_PROMPTINFO pPromptInfo, DWORD dwDefaultConfirmationStyle, DWORD dwFlags)
Definition: pstorec.c:282
static ULONG WINAPI PStore_fnRelease(IPStore *iface)
Definition: pstorec.c:104
static HRESULT WINAPI PStore_fnGetProvParam(IPStore *iface, DWORD dwParam, DWORD *pcbData, BYTE **ppbData, DWORD dwFlags)
Definition: pstorec.c:130
static HRESULT WINAPI PStore_fnDeleteSubtype(IPStore *This, PST_KEY Key, const GUID *pType, const GUID *pSubtype, DWORD dwFlags)
Definition: pstorec.c:205
static HRESULT WINAPI PStore_fnGetSubtypeInfo(IPStore *This, PST_KEY Key, const GUID *pType, const GUID *pSubtype, PPST_TYPEINFO **ppInfo, DWORD dwFlags)
Definition: pstorec.c:194
static HRESULT WINAPI PStore_fnDeleteType(IPStore *This, PST_KEY Key, const GUID *pType, DWORD dwFlags)
Definition: pstorec.c:172
static HRESULT WINAPI PStore_fnEnumSubtypes(IPStore *This, PST_KEY Key, const GUID *pType, DWORD dwFlags, IEnumPStoreTypes **ppenum)
Definition: pstorec.c:248
static HRESULT WINAPI PStore_fnDeleteItem(IPStore *This, PST_KEY Key, const GUID *pItemType, const GUID *pItemSubType, LPCWSTR szItemName, PPST_PROMPTINFO pPromptInfo, DWORD dwFlags)
Definition: pstorec.c:258
static HRESULT WINAPI PStore_fnCloseItem(IPStore *This, PST_KEY Key, const GUID *pItemType, const GUID *pItemSubtype, LPCWSTR *szItemName, DWORD dwFlags)
Definition: pstorec.c:308
static HRESULT WINAPI PStore_fnOpenItem(IPStore *This, PST_KEY Key, const GUID *pItemType, const GUID *pItemSubtype, LPCWSTR szItemName, PST_ACCESSMODE ModeFlags, PPST_PROMPTINFO pPromptInfo, DWORD dwFlags)
Definition: pstorec.c:296
static HRESULT WINAPI PStore_fnGetTypeInfo(IPStore *This, PST_KEY Key, const GUID *pType, PPST_TYPEINFO **ppInfo, DWORD dwFlags)
Definition: pstorec.c:162
static HRESULT WINAPI PStore_fnWriteAccessRuleset(IPStore *This, PST_KEY Key, const GUID *pType, const GUID *pSubtype, PPST_TYPEINFO pInfo, PPST_ACCESSRULESET pRules, DWORD dwFlags)
Definition: pstorec.c:227
static HRESULT WINAPI PStore_fnQueryInterface(IPStore *iface, REFIID riid, LPVOID *ppvObj)
Definition: pstorec.c:64
static HRESULT WINAPI PStore_fnCreateType(IPStore *This, PST_KEY Key, const GUID *pType, PPST_TYPEINFO pInfo, DWORD dwFlags)
Definition: pstorec.c:150
static ULONG WINAPI PStore_fnAddRef(IPStore *iface)
Definition: pstorec.c:92
static HRESULT WINAPI PStore_fnReadAccessRuleset(IPStore *This, PST_KEY Key, const GUID *pType, const GUID *pSubtype, PPST_TYPEINFO pInfo, PPST_ACCESSRULESET **ppRules, DWORD dwFlags)
Definition: pstorec.c:216
static HRESULT WINAPI PStore_fnGetInfo(IPStore *iface, PPST_PROVIDERINFO *ppProperties)
Definition: pstorec.c:121
static HRESULT WINAPI PStore_fnSetProvParam(IPStore *This, DWORD dwParam, DWORD cbData, BYTE *pbData, DWORD *dwFlags)
Definition: pstorec.c:140
static HRESULT WINAPI PStore_fnEnumItems(IPStore *This, PST_KEY Key, const GUID *pItemType, const GUID *pItemSubtype, DWORD dwFlags, IEnumPStoreItems **ppenum)
Definition: pstorec.c:319
static HRESULT WINAPI PStore_fnCreateSubtype(IPStore *This, PST_KEY Key, const GUID *pType, const GUID *pSubtype, PPST_TYPEINFO pInfo, PPST_ACCESSRULESET pRules, DWORD dwFlags)
Definition: pstorec.c:182

Definition at line 328 of file pstorec.c.

Referenced by PStoreCreateInstance().