ReactOS 0.4.15-dev-7788-g1ad9096
wdfregistry.h
Go to the documentation of this file.
1/*++
2
3Copyright (c) Microsoft Corporation. All rights reserved.
4
5_WdfVersionBuild_
6
7Module Name:
8
9 WdfRegistry.h
10
11Abstract:
12
13 This is the interface to registry access.
14
15Environment:
16
17 kernel mode only
18
19Revision History:
20
21--*/
22
23//
24// NOTE: This header is generated by stubwork. Please make any
25// modifications to the corresponding template files
26// (.x or .y) and use stubwork to regenerate the header
27//
28
29#ifndef _WDFREGISTRY_H_
30#define _WDFREGISTRY_H_
31
32#ifndef WDF_EXTERN_C
33 #ifdef __cplusplus
34 #define WDF_EXTERN_C extern "C"
35 #define WDF_EXTERN_C_START extern "C" {
36 #define WDF_EXTERN_C_END }
37 #else
38 #define WDF_EXTERN_C
39 #define WDF_EXTERN_C_START
40 #define WDF_EXTERN_C_END
41 #endif
42#endif
43
45
46
47
48#if (NTDDI_VERSION >= NTDDI_WIN2K)
49
50#define WDF_REGKEY_DEVICE_SUBKEY 0
51#define WDF_REGKEY_DRIVER_SUBKEY 0
52
53
54
55
56
57//
58// WDF Function: WdfRegistryOpenKey
59//
60typedef
65(STDCALL *PFN_WDFREGISTRYOPENKEY)(
66 _In_
69 WDFKEY ParentKey,
70 _In_
72 _In_
76 _Out_
77 WDFKEY* Key
78 );
79
84WdfRegistryOpenKey(
86 WDFKEY ParentKey,
87 _In_
89 _In_
93 _Out_
94 WDFKEY* Key
95 )
96{
98}
99
100//
101// WDF Function: WdfRegistryCreateKey
102//
103typedef
106WDFAPI
108(STDCALL *PFN_WDFREGISTRYCREATEKEY)(
109 _In_
112 WDFKEY ParentKey,
113 _In_
115 _In_
117 _In_
123 _Out_
124 WDFKEY* Key
125 );
126
131WdfRegistryCreateKey(
133 WDFKEY ParentKey,
134 _In_
136 _In_
138 _In_
144 _Out_
145 WDFKEY* Key
146 )
147{
149}
150
151//
152// WDF Function: WdfRegistryClose
153//
154typedef
156WDFAPI
157VOID
158(STDCALL *PFN_WDFREGISTRYCLOSE)(
159 _In_
161 _In_
162 WDFKEY Key
163 );
164
167VOID
168WdfRegistryClose(
169 _In_
170 WDFKEY Key
171 )
172{
174}
175
176//
177// WDF Function: WdfRegistryWdmGetHandle
178//
179typedef
181WDFAPI
182HANDLE
183(STDCALL *PFN_WDFREGISTRYWDMGETHANDLE)(
184 _In_
186 _In_
187 WDFKEY Key
188 );
189
192HANDLE
193WdfRegistryWdmGetHandle(
194 _In_
195 WDFKEY Key
196 )
197{
198 return ((PFN_WDFREGISTRYWDMGETHANDLE) WdfFunctions[WdfRegistryWdmGetHandleTableIndex])(WdfDriverGlobals, Key);
199}
200
201//
202// WDF Function: WdfRegistryRemoveKey
203//
204typedef
207WDFAPI
209(STDCALL *PFN_WDFREGISTRYREMOVEKEY)(
210 _In_
212 _In_
213 WDFKEY Key
214 );
215
220WdfRegistryRemoveKey(
221 _In_
222 WDFKEY Key
223 )
224{
225 return ((PFN_WDFREGISTRYREMOVEKEY) WdfFunctions[WdfRegistryRemoveKeyTableIndex])(WdfDriverGlobals, Key);
226}
227
228//
229// WDF Function: WdfRegistryRemoveValue
230//
231typedef
234WDFAPI
236(STDCALL *PFN_WDFREGISTRYREMOVEVALUE)(
237 _In_
239 _In_
240 WDFKEY Key,
241 _In_
243 );
244
249WdfRegistryRemoveValue(
250 _In_
251 WDFKEY Key,
252 _In_
254 )
255{
256 return ((PFN_WDFREGISTRYREMOVEVALUE) WdfFunctions[WdfRegistryRemoveValueTableIndex])(WdfDriverGlobals, Key, ValueName);
257}
258
259//
260// WDF Function: WdfRegistryQueryValue
261//
262typedef
265WDFAPI
267(STDCALL *PFN_WDFREGISTRYQUERYVALUE)(
268 _In_
270 _In_
271 WDFKEY Key,
272 _In_
274 _In_
277 PVOID Value,
282 );
283
288WdfRegistryQueryValue(
289 _In_
290 WDFKEY Key,
291 _In_
293 _In_
296 PVOID Value,
301 )
302{
304}
305
306//
307// WDF Function: WdfRegistryQueryMemory
308//
309typedef
312WDFAPI
314(STDCALL *PFN_WDFREGISTRYQUERYMEMORY)(
315 _In_
317 _In_
318 WDFKEY Key,
319 _In_
321 _In_
326 _Out_
327 WDFMEMORY* Memory,
330 );
331
336WdfRegistryQueryMemory(
337 _In_
338 WDFKEY Key,
339 _In_
341 _In_
346 _Out_
347 WDFMEMORY* Memory,
350 )
351{
353}
354
355//
356// WDF Function: WdfRegistryQueryMultiString
357//
358typedef
361WDFAPI
363(STDCALL *PFN_WDFREGISTRYQUERYMULTISTRING)(
364 _In_
366 _In_
367 WDFKEY Key,
368 _In_
372 _In_
373 WDFCOLLECTION Collection
374 );
375
380WdfRegistryQueryMultiString(
381 _In_
382 WDFKEY Key,
383 _In_
387 _In_
388 WDFCOLLECTION Collection
389 )
390{
392}
393
394//
395// WDF Function: WdfRegistryQueryUnicodeString
396//
397typedef
400WDFAPI
402(STDCALL *PFN_WDFREGISTRYQUERYUNICODESTRING)(
403 _In_
405 _In_
406 WDFKEY Key,
407 _In_
413 );
414
419WdfRegistryQueryUnicodeString(
420 _In_
421 WDFKEY Key,
422 _In_
428 )
429{
431}
432
433//
434// WDF Function: WdfRegistryQueryString
435//
436typedef
439WDFAPI
441(STDCALL *PFN_WDFREGISTRYQUERYSTRING)(
442 _In_
444 _In_
445 WDFKEY Key,
446 _In_
448 _In_
449 WDFSTRING String
450 );
451
456WdfRegistryQueryString(
457 _In_
458 WDFKEY Key,
459 _In_
461 _In_
462 WDFSTRING String
463 )
464{
465 return ((PFN_WDFREGISTRYQUERYSTRING) WdfFunctions[WdfRegistryQueryStringTableIndex])(WdfDriverGlobals, Key, ValueName, String);
466}
467
468//
469// WDF Function: WdfRegistryQueryULong
470//
471typedef
474WDFAPI
476(STDCALL *PFN_WDFREGISTRYQUERYULONG)(
477 _In_
479 _In_
480 WDFKEY Key,
481 _In_
483 _Out_
485 );
486
491WdfRegistryQueryULong(
492 _In_
493 WDFKEY Key,
494 _In_
496 _Out_
498 )
499{
500 return ((PFN_WDFREGISTRYQUERYULONG) WdfFunctions[WdfRegistryQueryULongTableIndex])(WdfDriverGlobals, Key, ValueName, Value);
501}
502
503//
504// WDF Function: WdfRegistryAssignValue
505//
506typedef
509WDFAPI
511(STDCALL *PFN_WDFREGISTRYASSIGNVALUE)(
512 _In_
514 _In_
515 WDFKEY Key,
516 _In_
518 _In_
520 _In_
524 );
525
530WdfRegistryAssignValue(
531 _In_
532 WDFKEY Key,
533 _In_
535 _In_
537 _In_
541 )
542{
544}
545
546//
547// WDF Function: WdfRegistryAssignMemory
548//
549typedef
552WDFAPI
554(STDCALL *PFN_WDFREGISTRYASSIGNMEMORY)(
555 _In_
557 _In_
558 WDFKEY Key,
559 _In_
561 _In_
563 _In_
564 WDFMEMORY Memory,
567 );
568
573WdfRegistryAssignMemory(
574 _In_
575 WDFKEY Key,
576 _In_
578 _In_
580 _In_
581 WDFMEMORY Memory,
584 )
585{
587}
588
589//
590// WDF Function: WdfRegistryAssignMultiString
591//
592typedef
595WDFAPI
597(STDCALL *PFN_WDFREGISTRYASSIGNMULTISTRING)(
598 _In_
600 _In_
601 WDFKEY Key,
602 _In_
604 _In_
605 WDFCOLLECTION StringsCollection
606 );
607
612WdfRegistryAssignMultiString(
613 _In_
614 WDFKEY Key,
615 _In_
617 _In_
618 WDFCOLLECTION StringsCollection
619 )
620{
622}
623
624//
625// WDF Function: WdfRegistryAssignUnicodeString
626//
627typedef
630WDFAPI
632(STDCALL *PFN_WDFREGISTRYASSIGNUNICODESTRING)(
633 _In_
635 _In_
636 WDFKEY Key,
637 _In_
639 _In_
641 );
642
647WdfRegistryAssignUnicodeString(
648 _In_
649 WDFKEY Key,
650 _In_
652 _In_
654 )
655{
656 return ((PFN_WDFREGISTRYASSIGNUNICODESTRING) WdfFunctions[WdfRegistryAssignUnicodeStringTableIndex])(WdfDriverGlobals, Key, ValueName, Value);
657}
658
659//
660// WDF Function: WdfRegistryAssignString
661//
662typedef
665WDFAPI
667(STDCALL *PFN_WDFREGISTRYASSIGNSTRING)(
668 _In_
670 _In_
671 WDFKEY Key,
672 _In_
674 _In_
675 WDFSTRING String
676 );
677
682WdfRegistryAssignString(
683 _In_
684 WDFKEY Key,
685 _In_
687 _In_
688 WDFSTRING String
689 )
690{
691 return ((PFN_WDFREGISTRYASSIGNSTRING) WdfFunctions[WdfRegistryAssignStringTableIndex])(WdfDriverGlobals, Key, ValueName, String);
692}
693
694//
695// WDF Function: WdfRegistryAssignULong
696//
697typedef
700WDFAPI
702(STDCALL *PFN_WDFREGISTRYASSIGNULONG)(
703 _In_
705 _In_
706 WDFKEY Key,
707 _In_
709 _In_
711 );
712
717WdfRegistryAssignULong(
718 _In_
719 WDFKEY Key,
720 _In_
722 _In_
724 )
725{
726 return ((PFN_WDFREGISTRYASSIGNULONG) WdfFunctions[WdfRegistryAssignULongTableIndex])(WdfDriverGlobals, Key, ValueName, Value);
727}
728
729
730
731#endif // (NTDDI_VERSION >= NTDDI_WIN2K)
732
733
735
736#endif // _WDFREGISTRY_H_
737
#define VOID
Definition: acefi.h:82
LONG NTSTATUS
Definition: precomp.h:26
#define NTSTATUS
Definition: precomp.h:21
#define PASSIVE_LEVEL
Definition: env_spec_w32.h:693
DriverGlobals
#define _Out_opt_
Definition: ms_sal.h:346
#define _Inout_opt_
Definition: ms_sal.h:379
#define _Must_inspect_result_
Definition: ms_sal.h:558
#define _Out_
Definition: ms_sal.h:345
#define _Strict_type_match_
Definition: ms_sal.h:2954
#define _In_
Definition: ms_sal.h:308
#define _In_opt_
Definition: ms_sal.h:309
ULONG ACCESS_MASK
Definition: nt_native.h:40
uint32_t * PULONG
Definition: typedefs.h:59
INT POOL_TYPE
Definition: typedefs.h:78
PVOID HANDLE
Definition: typedefs.h:73
uint16_t * PUSHORT
Definition: typedefs.h:56
uint32_t ULONG
Definition: typedefs.h:59
#define STDCALL
Definition: wdf.h:45
#define WdfFunctions
Definition: wdf.h:66
_Must_inspect_result_ _In_ WDFDEVICE _In_ ULONG _In_ ACCESS_MASK _In_opt_ PWDF_OBJECT_ATTRIBUTES KeyAttributes
Definition: wdfdevice.h:2660
_Must_inspect_result_ _In_ WDFDEVICE _In_ ULONG _In_ ACCESS_MASK DesiredAccess
Definition: wdfdevice.h:2658
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ _Strict_type_match_ POOL_TYPE PoolType
Definition: wdfdevice.h:3815
_Must_inspect_result_ _In_ WDFDEVICE _In_ PCUNICODE_STRING KeyName
Definition: wdfdevice.h:2699
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFSTRING String
Definition: wdfdevice.h:2433
PWDF_DRIVER_GLOBALS WdfDriverGlobals
@ WdfRegistryWdmGetHandleTableIndex
Definition: wdffuncenum.h:257
@ WdfRegistryRemoveValueTableIndex
Definition: wdffuncenum.h:259
@ WdfRegistryCloseTableIndex
Definition: wdffuncenum.h:256
@ WdfRegistryQueryStringTableIndex
Definition: wdffuncenum.h:264
@ WdfRegistryAssignValueTableIndex
Definition: wdffuncenum.h:266
@ WdfRegistryQueryMemoryTableIndex
Definition: wdffuncenum.h:261
@ WdfRegistryQueryULongTableIndex
Definition: wdffuncenum.h:265
@ WdfRegistryQueryUnicodeStringTableIndex
Definition: wdffuncenum.h:263
@ WdfRegistryQueryMultiStringTableIndex
Definition: wdffuncenum.h:262
@ WdfRegistryOpenKeyTableIndex
Definition: wdffuncenum.h:254
@ WdfRegistryAssignULongTableIndex
Definition: wdffuncenum.h:271
@ WdfRegistryAssignStringTableIndex
Definition: wdffuncenum.h:270
@ WdfRegistryAssignMultiStringTableIndex
Definition: wdffuncenum.h:268
@ WdfRegistryAssignMemoryTableIndex
Definition: wdffuncenum.h:267
@ WdfRegistryRemoveKeyTableIndex
Definition: wdffuncenum.h:258
@ WdfRegistryCreateKeyTableIndex
Definition: wdffuncenum.h:255
@ WdfRegistryAssignUnicodeStringTableIndex
Definition: wdffuncenum.h:269
@ WdfRegistryQueryValueTableIndex
Definition: wdffuncenum.h:260
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ _In_ _Strict_type_match_ POOL_TYPE _In_opt_ PWDF_OBJECT_ATTRIBUTES MemoryAttributes
Definition: wdfmemory.h:409
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ _Strict_type_match_ POOL_TYPE _In_opt_ ULONG _In_ _Out_ WDFMEMORY * Memory
Definition: wdfmemory.h:169
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ _Strict_type_match_ POOL_TYPE _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFMEMORY * Memory
Definition: wdfregistry.h:327
_Must_inspect_result_ _In_opt_ WDFKEY _In_ PCUNICODE_STRING _In_ ACCESS_MASK _In_ ULONG _Out_opt_ PULONG CreateDisposition
Definition: wdfregistry.h:120
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_opt_ PWDF_OBJECT_ATTRIBUTES _In_ WDFCOLLECTION Collection
Definition: wdfregistry.h:374
#define WDF_EXTERN_C_END
Definition: wdfregistry.h:40
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ ULONG _Out_opt_ PULONG ValueLengthQueried
Definition: wdfregistry.h:279
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_opt_ PWDF_OBJECT_ATTRIBUTES StringsAttributes
Definition: wdfregistry.h:371
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT ValueByteLength
Definition: wdfregistry.h:410
_Must_inspect_result_ _In_opt_ WDFKEY _In_ PCUNICODE_STRING _In_ ACCESS_MASK DesiredAccess
Definition: wdfregistry.h:73
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ _Strict_type_match_ POOL_TYPE PoolType
Definition: wdfregistry.h:323
_Must_inspect_result_ _In_opt_ WDFKEY _In_ PCUNICODE_STRING KeyName
Definition: wdfregistry.h:71
_Must_inspect_result_ _In_opt_ WDFKEY _In_ PCUNICODE_STRING _In_ ACCESS_MASK _In_ ULONG CreateOptions
Definition: wdfregistry.h:118
#define WDF_EXTERN_C_START
Definition: wdfregistry.h:39
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ WDFCOLLECTION StringsCollection
Definition: wdfregistry.h:606
_Must_inspect_result_ _In_opt_ WDFKEY _In_ PCUNICODE_STRING _In_ ACCESS_MASK _In_opt_ PWDF_OBJECT_ATTRIBUTES KeyAttributes
Definition: wdfregistry.h:75
_Must_inspect_result_ _In_opt_ WDFKEY ParentKey
Definition: wdfregistry.h:69
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ WDFSTRING String
Definition: wdfregistry.h:450
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ ULONG _Out_writes_bytes_opt_(ValueLength) PVOID Value
Definition: wdfregistry.h:276
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ ULONG _Out_opt_ PULONG _Out_opt_ PULONG ValueType
Definition: wdfregistry.h:282
_Must_inspect_result_ _In_opt_ WDFKEY _In_ PCUNICODE_STRING _In_ ACCESS_MASK _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFKEY * Key
Definition: wdfregistry.h:78
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING ValueName
Definition: wdfregistry.h:243
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ ULONG ValueLength
Definition: wdfregistry.h:275
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ ULONG _In_ WDFMEMORY _In_opt_ PWDFMEMORY_OFFSET MemoryOffsets
Definition: wdfregistry.h:567
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value
Definition: wdfregistry.h:413
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ ULONG _In_ ULONG _In_reads_(ValueLength) PVOID Value)
Definition: wdfregistry.h:522
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ _Strict_type_match_ POOL_TYPE _In_opt_ PWDF_OBJECT_ATTRIBUTES MemoryAttributes
Definition: wdfregistry.h:325
_Must_inspect_result_ _IRQL_requires_max_(PASSIVE_LEVEL) WDFAPI NTSTATUS(STDCALL *PFN_WDFREGISTRYOPENKEY)(_In_ PWDF_DRIVER_GLOBALS DriverGlobals
Definition: wdfregistry.h:62
#define WDFAPI
Definition: wdftypes.h:53
#define FORCEINLINE
Definition: wdftypes.h:67