10 ////////////////////////////////////////////////////////////////////////////////
12 (*PQUERY_REGISTRY_KEYS_ROUTINE
)(IN HKEY hRootKey
,
15 IN HKEY hOpenedSubKey
,
17 IN PVOID EntryContext
);
19 #define QUERY_REGISTRY_KEYS_ROUTINE(fnName) \
20 LRESULT (fnName)(IN HKEY hRootKey, \
22 IN LPWSTR SubKeyName, \
23 IN HKEY hOpenedSubKey, \
25 IN PVOID EntryContext)
27 typedef struct __tagQUERY_REGISTRY_KEYS_TABLE
29 PQUERY_REGISTRY_KEYS_ROUTINE QueryRoutine
;
32 } QUERY_REGISTRY_KEYS_TABLE
, *PQUERY_REGISTRY_KEYS_TABLE
;
35 RegQueryRegistryKeys(IN HKEY hRootKey
,
37 IN PQUERY_REGISTRY_KEYS_TABLE QueryTable
,
40 ////////////////////////////////////////////////////////////////////////////////
42 (*PQUERY_REGISTRY_VALUES_ROUTINE
)(IN HKEY hRootKey
,
49 IN PVOID EntryContext
);
51 #define QUERY_REGISTRY_VALUES_ROUTINE(fnName) \
52 LRESULT (fnName)(IN HKEY hRootKey, \
54 IN LPWSTR ValueName, \
56 IN LPBYTE ValueData, \
57 IN DWORD ValueLength, \
59 IN PVOID EntryContext)
61 typedef struct __tagQUERY_REGISTRY_VALUES_TABLE
63 PQUERY_REGISTRY_VALUES_ROUTINE QueryRoutine
;
66 } QUERY_REGISTRY_VALUES_TABLE
, *PQUERY_REGISTRY_VALUES_TABLE
;
69 RegQueryRegistryValues(IN HKEY hRootKey
,
71 IN PQUERY_REGISTRY_VALUES_TABLE QueryTable
,
74 ////////////////////////////////////////////////////////////////////////////////
77 RegGetDWORDValue(IN HKEY hKey
,
78 IN LPCWSTR lpSubKey OPTIONAL
,
79 IN LPCWSTR lpValue OPTIONAL
,
80 OUT LPDWORD lpData OPTIONAL
);
83 RegSetDWORDValue(IN HKEY hKey
,
84 IN LPCWSTR lpSubKey OPTIONAL
,
85 IN LPCWSTR lpValue OPTIONAL
,
86 IN BOOL bCreateKeyIfDoesntExist
,
93 #endif // __REGUTILS_H__