[XDK]
[reactos.git] / include / xdk / zwfuncs.h
1 /******************************************************************************
2 * ZwXxx Functions *
3 ******************************************************************************/
4
5 /* Constants */
6 #define NtCurrentProcess() ( (HANDLE)(LONG_PTR) -1 )
7 #define ZwCurrentProcess() NtCurrentProcess()
8 #define NtCurrentThread() ( (HANDLE)(LONG_PTR) -2 )
9 #define ZwCurrentThread() NtCurrentThread()
10
11 #if (NTDDI_VERSION >= NTDDI_WIN2K)
12
13 NTSYSAPI
14 NTSTATUS
15 NTAPI
16 ZwClose(
17 IN HANDLE Handle);
18
19 NTSYSAPI
20 NTSTATUS
21 NTAPI
22 ZwCreateDirectoryObject(
23 OUT PHANDLE DirectoryHandle,
24 IN ACCESS_MASK DesiredAccess,
25 IN POBJECT_ATTRIBUTES ObjectAttributes);
26
27 NTSYSAPI
28 NTSTATUS
29 NTAPI
30 ZwCreateFile(
31 OUT PHANDLE FileHandle,
32 IN ACCESS_MASK DesiredAccess,
33 IN POBJECT_ATTRIBUTES ObjectAttributes,
34 OUT PIO_STATUS_BLOCK IoStatusBlock,
35 IN PLARGE_INTEGER AllocationSize OPTIONAL,
36 IN ULONG FileAttributes,
37 IN ULONG ShareAccess,
38 IN ULONG CreateDisposition,
39 IN ULONG CreateOptions,
40 IN PVOID EaBuffer OPTIONAL,
41 IN ULONG EaLength);
42
43 NTSYSAPI
44 NTSTATUS
45 NTAPI
46 ZwCreateKey(
47 OUT PHANDLE KeyHandle,
48 IN ACCESS_MASK DesiredAccess,
49 IN POBJECT_ATTRIBUTES ObjectAttributes,
50 IN ULONG TitleIndex,
51 IN PUNICODE_STRING Class OPTIONAL,
52 IN ULONG CreateOptions,
53 OUT PULONG Disposition OPTIONAL);
54
55 NTSYSAPI
56 NTSTATUS
57 NTAPI
58 ZwCreateSection(
59 OUT PHANDLE SectionHandle,
60 IN ACCESS_MASK DesiredAccess,
61 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
62 IN PLARGE_INTEGER MaximumSize OPTIONAL,
63 IN ULONG SectionPageProtection,
64 IN ULONG AllocationAttributes,
65 IN HANDLE FileHandle OPTIONAL);
66
67 NTSYSAPI
68 NTSTATUS
69 NTAPI
70 ZwDeleteKey(
71 IN HANDLE KeyHandle);
72
73 NTSYSAPI
74 NTSTATUS
75 NTAPI
76 ZwDeleteValueKey(
77 IN HANDLE KeyHandle,
78 IN PUNICODE_STRING ValueName);
79
80 NTSYSAPI
81 NTSTATUS
82 NTAPI
83 ZwEnumerateKey(
84 IN HANDLE KeyHandle,
85 IN ULONG Index,
86 IN KEY_INFORMATION_CLASS KeyInformationClass,
87 OUT PVOID KeyInformation OPTIONAL,
88 IN ULONG Length,
89 OUT PULONG ResultLength);
90
91 NTSYSAPI
92 NTSTATUS
93 NTAPI
94 ZwEnumerateValueKey(
95 IN HANDLE KeyHandle,
96 IN ULONG Index,
97 IN KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass,
98 OUT PVOID KeyValueInformation OPTIONAL,
99 IN ULONG Length,
100 OUT PULONG ResultLength);
101
102 NTSYSAPI
103 NTSTATUS
104 NTAPI
105 ZwFlushKey(
106 IN HANDLE KeyHandle);
107
108 NTSYSAPI
109 NTSTATUS
110 NTAPI
111 ZwLoadDriver(
112 IN PUNICODE_STRING DriverServiceName);
113
114 NTSYSAPI
115 NTSTATUS
116 NTAPI
117 ZwMakeTemporaryObject(
118 IN HANDLE Handle);
119
120 NTSYSAPI
121 NTSTATUS
122 NTAPI
123 ZwMapViewOfSection(
124 IN HANDLE SectionHandle,
125 IN HANDLE ProcessHandle,
126 IN OUT PVOID *BaseAddress,
127 IN ULONG_PTR ZeroBits,
128 IN SIZE_T CommitSize,
129 IN OUT PLARGE_INTEGER SectionOffset OPTIONAL,
130 IN OUT PSIZE_T ViewSize,
131 IN SECTION_INHERIT InheritDisposition,
132 IN ULONG AllocationType,
133 IN ULONG Protect);
134
135 NTSYSAPI
136 NTSTATUS
137 NTAPI
138 ZwOpenFile(
139 OUT PHANDLE FileHandle,
140 IN ACCESS_MASK DesiredAccess,
141 IN POBJECT_ATTRIBUTES ObjectAttributes,
142 OUT PIO_STATUS_BLOCK IoStatusBlock,
143 IN ULONG ShareAccess,
144 IN ULONG OpenOptions);
145
146 NTSYSAPI
147 NTSTATUS
148 NTAPI
149 ZwOpenKey(
150 OUT PHANDLE KeyHandle,
151 IN ACCESS_MASK DesiredAccess,
152 IN POBJECT_ATTRIBUTES ObjectAttributes);
153
154 NTSYSAPI
155 NTSTATUS
156 NTAPI
157 ZwOpenSection(
158 OUT PHANDLE SectionHandle,
159 IN ACCESS_MASK DesiredAccess,
160 IN POBJECT_ATTRIBUTES ObjectAttributes);
161
162 NTSYSAPI
163 NTSTATUS
164 NTAPI
165 ZwOpenSymbolicLinkObject(
166 OUT PHANDLE LinkHandle,
167 IN ACCESS_MASK DesiredAccess,
168 IN POBJECT_ATTRIBUTES ObjectAttributes);
169
170 NTSYSAPI
171 NTSTATUS
172 NTAPI
173 ZwQueryInformationFile(
174 IN HANDLE FileHandle,
175 OUT PIO_STATUS_BLOCK IoStatusBlock,
176 OUT PVOID FileInformation,
177 IN ULONG Length,
178 IN FILE_INFORMATION_CLASS FileInformationClass);
179
180 NTSYSAPI
181 NTSTATUS
182 NTAPI
183 ZwQueryKey(
184 IN HANDLE KeyHandle,
185 IN KEY_INFORMATION_CLASS KeyInformationClass,
186 OUT PVOID KeyInformation OPTIONAL,
187 IN ULONG Length,
188 OUT PULONG ResultLength);
189
190 NTSYSAPI
191 NTSTATUS
192 NTAPI
193 ZwQuerySymbolicLinkObject(
194 IN HANDLE LinkHandle,
195 IN OUT PUNICODE_STRING LinkTarget,
196 OUT PULONG ReturnedLength OPTIONAL);
197
198 NTSYSAPI
199 NTSTATUS
200 NTAPI
201 ZwQueryValueKey(
202 IN HANDLE KeyHandle,
203 IN PUNICODE_STRING ValueName,
204 IN KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass,
205 OUT PVOID KeyValueInformation OPTIONAL,
206 IN ULONG Length,
207 OUT PULONG ResultLength);
208
209 NTSYSAPI
210 NTSTATUS
211 NTAPI
212 ZwReadFile(
213 IN HANDLE FileHandle,
214 IN HANDLE Event OPTIONAL,
215 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
216 IN PVOID ApcContext OPTIONAL,
217 OUT PIO_STATUS_BLOCK IoStatusBlock,
218 OUT PVOID Buffer,
219 IN ULONG Length,
220 IN PLARGE_INTEGER ByteOffset OPTIONAL,
221 IN PULONG Key OPTIONAL);
222
223 NTSYSAPI
224 NTSTATUS
225 NTAPI
226 ZwSetInformationFile(
227 IN HANDLE FileHandle,
228 OUT PIO_STATUS_BLOCK IoStatusBlock,
229 IN PVOID FileInformation,
230 IN ULONG Length,
231 IN FILE_INFORMATION_CLASS FileInformationClass);
232
233 NTSYSAPI
234 NTSTATUS
235 NTAPI
236 ZwSetValueKey(
237 IN HANDLE KeyHandle,
238 IN PUNICODE_STRING ValueName,
239 IN ULONG TitleIndex OPTIONAL,
240 IN ULONG Type,
241 IN PVOID Data OPTIONAL,
242 IN ULONG DataSize);
243
244 NTSYSAPI
245 NTSTATUS
246 NTAPI
247 ZwUnloadDriver(
248 IN PUNICODE_STRING DriverServiceName);
249
250 NTSYSAPI
251 NTSTATUS
252 NTAPI
253 ZwUnmapViewOfSection(
254 IN HANDLE ProcessHandle,
255 IN PVOID BaseAddress OPTIONAL);
256
257 NTSYSAPI
258 NTSTATUS
259 NTAPI
260 ZwWriteFile(
261 IN HANDLE FileHandle,
262 IN HANDLE Event OPTIONAL,
263 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
264 IN PVOID ApcContext OPTIONAL,
265 OUT PIO_STATUS_BLOCK IoStatusBlock,
266 IN PVOID Buffer,
267 IN ULONG Length,
268 IN PLARGE_INTEGER ByteOffset OPTIONAL,
269 IN PULONG Key OPTIONAL);
270
271 NTSYSAPI
272 NTSTATUS
273 NTAPI
274 ZwQueryFullAttributesFile(
275 IN POBJECT_ATTRIBUTES ObjectAttributes,
276 OUT PFILE_NETWORK_OPEN_INFORMATION FileInformation);
277
278 #endif /* (NTDDI_VERSION >= NTDDI_WIN2K) */
279
280 #if (NTDDI_VERSION >= NTDDI_WIN2003)
281 NTSYSCALLAPI
282 NTSTATUS
283 NTAPI
284 ZwOpenEvent(
285 OUT PHANDLE EventHandle,
286 IN ACCESS_MASK DesiredAccess,
287 IN POBJECT_ATTRIBUTES ObjectAttributes);
288 #endif
289
290 #if (NTDDI_VERSION >= NTDDI_VISTA)
291
292 NTSYSAPI
293 NTSTATUS
294 ZwCreateKeyTransacted(
295 OUT PHANDLE KeyHandle,
296 IN ACCESS_MASK DesiredAccess,
297 IN POBJECT_ATTRIBUTES ObjectAttributes,
298 IN ULONG TitleIndex,
299 IN PUNICODE_STRING Class OPTIONAL,
300 IN ULONG CreateOptions,
301 IN HANDLE TransactionHandle,
302 OUT PULONG Disposition OPTIONAL);
303
304 NTSYSAPI
305 NTSTATUS
306 NTAPI
307 ZwOpenKeyTransacted(
308 OUT PHANDLE KeyHandle,
309 IN ACCESS_MASK DesiredAccess,
310 IN POBJECT_ATTRIBUTES ObjectAttributes,
311 IN HANDLE TransactionHandle);
312
313 NTSYSCALLAPI
314 NTSTATUS
315 NTAPI
316 ZwCreateTransactionManager(
317 OUT PHANDLE TmHandle,
318 IN ACCESS_MASK DesiredAccess,
319 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
320 IN PUNICODE_STRING LogFileName OPTIONAL,
321 IN ULONG CreateOptions OPTIONAL,
322 IN ULONG CommitStrength OPTIONAL);
323
324 NTSYSCALLAPI
325 NTSTATUS
326 NTAPI
327 ZwOpenTransactionManager(
328 OUT PHANDLE TmHandle,
329 IN ACCESS_MASK DesiredAccess,
330 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
331 IN PUNICODE_STRING LogFileName OPTIONAL,
332 IN LPGUID TmIdentity OPTIONAL,
333 IN ULONG OpenOptions OPTIONAL);
334
335 NTSYSCALLAPI
336 NTSTATUS
337 NTAPI
338 ZwRollforwardTransactionManager(
339 IN HANDLE TransactionManagerHandle,
340 IN PLARGE_INTEGER TmVirtualClock OPTIONAL);
341
342 NTSYSCALLAPI
343 NTSTATUS
344 NTAPI
345 ZwRecoverTransactionManager(
346 IN HANDLE TransactionManagerHandle);
347
348 NTSYSCALLAPI
349 NTSTATUS
350 NTAPI
351 ZwQueryInformationTransactionManager(
352 IN HANDLE TransactionManagerHandle,
353 IN TRANSACTIONMANAGER_INFORMATION_CLASS TransactionManagerInformationClass,
354 OUT PVOID TransactionManagerInformation,
355 IN ULONG TransactionManagerInformationLength,
356 OUT PULONG ReturnLength OPTIONAL);
357
358 NTSYSCALLAPI
359 NTSTATUS
360 NTAPI
361 ZwSetInformationTransactionManager(
362 IN HANDLE TmHandle,
363 IN TRANSACTIONMANAGER_INFORMATION_CLASS TransactionManagerInformationClass,
364 IN PVOID TransactionManagerInformation,
365 IN ULONG TransactionManagerInformationLength);
366
367 NTSYSCALLAPI
368 NTSTATUS
369 NTAPI
370 ZwEnumerateTransactionObject(
371 IN HANDLE RootObjectHandle OPTIONAL,
372 IN KTMOBJECT_TYPE QueryType,
373 IN OUT PKTMOBJECT_CURSOR ObjectCursor,
374 IN ULONG ObjectCursorLength,
375 OUT PULONG ReturnLength);
376
377 NTSYSCALLAPI
378 NTSTATUS
379 NTAPI
380 ZwCreateTransaction(
381 OUT PHANDLE TransactionHandle,
382 IN ACCESS_MASK DesiredAccess,
383 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
384 IN LPGUID Uow OPTIONAL,
385 IN HANDLE TmHandle OPTIONAL,
386 IN ULONG CreateOptions OPTIONAL,
387 IN ULONG IsolationLevel OPTIONAL,
388 IN ULONG IsolationFlags OPTIONAL,
389 IN PLARGE_INTEGER Timeout OPTIONAL,
390 IN PUNICODE_STRING Description OPTIONAL);
391
392 NTSYSCALLAPI
393 NTSTATUS
394 NTAPI
395 ZwOpenTransaction(
396 OUT PHANDLE TransactionHandle,
397 IN ACCESS_MASK DesiredAccess,
398 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
399 IN LPGUID Uow,
400 IN HANDLE TmHandle OPTIONAL);
401
402 NTSYSCALLAPI
403 NTSTATUS
404 NTAPI
405 ZwQueryInformationTransaction(
406 IN HANDLE TransactionHandle,
407 IN TRANSACTION_INFORMATION_CLASS TransactionInformationClass,
408 OUT PVOID TransactionInformation,
409 IN ULONG TransactionInformationLength,
410 OUT PULONG ReturnLength OPTIONAL);
411
412 NTSYSCALLAPI
413 NTSTATUS
414 NTAPI
415 ZwSetInformationTransaction(
416 IN HANDLE TransactionHandle,
417 IN TRANSACTION_INFORMATION_CLASS TransactionInformationClass,
418 IN PVOID TransactionInformation,
419 IN ULONG TransactionInformationLength);
420
421 NTSYSCALLAPI
422 NTSTATUS
423 NTAPI
424 ZwCommitTransaction(
425 IN HANDLE TransactionHandle,
426 IN BOOLEAN Wait);
427
428 NTSYSCALLAPI
429 NTSTATUS
430 NTAPI
431 ZwRollbackTransaction(
432 IN HANDLE TransactionHandle,
433 IN BOOLEAN Wait);
434
435 NTSYSCALLAPI
436 NTSTATUS
437 NTAPI
438 ZwCreateResourceManager(
439 OUT PHANDLE ResourceManagerHandle,
440 IN ACCESS_MASK DesiredAccess,
441 IN HANDLE TmHandle,
442 IN LPGUID ResourceManagerGuid OPTIONAL,
443 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
444 IN ULONG CreateOptions OPTIONAL,
445 IN PUNICODE_STRING Description OPTIONAL);
446
447 NTSYSCALLAPI
448 NTSTATUS
449 NTAPI
450 ZwOpenResourceManager(
451 OUT PHANDLE ResourceManagerHandle,
452 IN ACCESS_MASK DesiredAccess,
453 IN HANDLE TmHandle,
454 IN LPGUID ResourceManagerGuid,
455 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL);
456
457 NTSYSCALLAPI
458 NTSTATUS
459 NTAPI
460 ZwRecoverResourceManager(
461 IN HANDLE ResourceManagerHandle);
462
463 NTSYSCALLAPI
464 NTSTATUS
465 NTAPI
466 ZwGetNotificationResourceManager(
467 IN HANDLE ResourceManagerHandle,
468 OUT PTRANSACTION_NOTIFICATION TransactionNotification,
469 IN ULONG NotificationLength,
470 IN PLARGE_INTEGER Timeout,
471 IN PULONG ReturnLength OPTIONAL,
472 IN ULONG Asynchronous,
473 IN ULONG_PTR AsynchronousContext OPTIONAL);
474
475 NTSYSCALLAPI
476 NTSTATUS
477 NTAPI
478 ZwQueryInformationResourceManager(
479 IN HANDLE ResourceManagerHandle,
480 IN RESOURCEMANAGER_INFORMATION_CLASS ResourceManagerInformationClass,
481 OUT PVOID ResourceManagerInformation,
482 IN ULONG ResourceManagerInformationLength,
483 IN PULONG ReturnLength OPTIONAL);
484
485 NTSYSCALLAPI
486 NTSTATUS
487 NTAPI
488 ZwSetInformationResourceManager(
489 IN HANDLE ResourceManagerHandle,
490 IN RESOURCEMANAGER_INFORMATION_CLASS ResourceManagerInformationClass,
491 IN PVOID ResourceManagerInformation,
492 IN ULONG ResourceManagerInformationLength);
493
494 NTSYSCALLAPI
495 NTSTATUS
496 NTAPI
497 ZwCreateEnlistment(
498 OUT PHANDLE EnlistmentHandle,
499 IN ACCESS_MASK DesiredAccess,
500 IN HANDLE ResourceManagerHandle,
501 IN HANDLE TransactionHandle,
502 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
503 IN ULONG CreateOptions OPTIONAL,
504 IN NOTIFICATION_MASK NotificationMask,
505 IN PVOID EnlistmentKey OPTIONAL);
506
507 NTSYSCALLAPI
508 NTSTATUS
509 NTAPI
510 ZwOpenEnlistment(
511 OUT PHANDLE EnlistmentHandle,
512 IN ACCESS_MASK DesiredAccess,
513 IN HANDLE RmHandle,
514 IN LPGUID EnlistmentGuid,
515 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL);
516
517 NTSYSCALLAPI
518 NTSTATUS
519 NTAPI
520 ZwQueryInformationEnlistment(
521 IN HANDLE EnlistmentHandle,
522 IN ENLISTMENT_INFORMATION_CLASS EnlistmentInformationClass,
523 OUT PVOID EnlistmentInformation,
524 IN ULONG EnlistmentInformationLength,
525 IN PULONG ReturnLength OPTIONAL);
526
527 NTSYSCALLAPI
528 NTSTATUS
529 NTAPI
530 ZwSetInformationEnlistment(
531 IN HANDLE EnlistmentHandle,
532 IN ENLISTMENT_INFORMATION_CLASS EnlistmentInformationClass,
533 IN PVOID EnlistmentInformation,
534 IN ULONG EnlistmentInformationLength);
535
536 NTSYSCALLAPI
537 NTSTATUS
538 NTAPI
539 ZwRecoverEnlistment(
540 IN HANDLE EnlistmentHandle,
541 IN PVOID EnlistmentKey OPTIONAL);
542
543 NTSYSCALLAPI
544 NTSTATUS
545 NTAPI
546 ZwPrePrepareEnlistment(
547 IN HANDLE EnlistmentHandle,
548 IN PLARGE_INTEGER TmVirtualClock OPTIONAL);
549
550 NTSYSCALLAPI
551 NTSTATUS
552 NTAPI
553 ZwPrepareEnlistment(
554 IN HANDLE EnlistmentHandle,
555 IN PLARGE_INTEGER TmVirtualClock OPTIONAL);
556
557 NTSYSCALLAPI
558 NTSTATUS
559 NTAPI
560 ZwCommitEnlistment(
561 IN HANDLE EnlistmentHandle,
562 IN PLARGE_INTEGER TmVirtualClock OPTIONAL);
563
564 NTSYSCALLAPI
565 NTSTATUS
566 NTAPI
567 ZwRollbackEnlistment(
568 IN HANDLE EnlistmentHandle,
569 IN PLARGE_INTEGER TmVirtualClock OPTIONAL);
570
571 NTSYSCALLAPI
572 NTSTATUS
573 NTAPI
574 ZwPrePrepareComplete(
575 IN HANDLE EnlistmentHandle,
576 IN PLARGE_INTEGER TmVirtualClock OPTIONAL);
577
578 NTSYSCALLAPI
579 NTSTATUS
580 NTAPI
581 ZwPrepareComplete(
582 IN HANDLE EnlistmentHandle,
583 IN PLARGE_INTEGER TmVirtualClock OPTIONAL);
584
585 NTSYSCALLAPI
586 NTSTATUS
587 NTAPI
588 ZwCommitComplete(
589 IN HANDLE EnlistmentHandle,
590 IN PLARGE_INTEGER TmVirtualClock OPTIONAL);
591
592 NTSYSCALLAPI
593 NTSTATUS
594 NTAPI
595 ZwReadOnlyEnlistment(
596 IN HANDLE EnlistmentHandle,
597 IN PLARGE_INTEGER TmVirtualClock OPTIONAL);
598
599 NTSYSCALLAPI
600 NTSTATUS
601 NTAPI
602 ZwRollbackComplete(
603 IN HANDLE EnlistmentHandle,
604 IN PLARGE_INTEGER TmVirtualClock OPTIONAL);
605
606 NTSYSCALLAPI
607 NTSTATUS
608 NTAPI
609 ZwSinglePhaseReject(
610 IN HANDLE EnlistmentHandle,
611 IN PLARGE_INTEGER TmVirtualClock OPTIONAL);
612
613
614 #endif /* (NTDDI_VERSION >= NTDDI_VISTA) */
615
616 #if (NTDDI_VERSION >= NTDDI_WIN7)
617
618 NTSYSAPI
619 NTSTATUS
620 NTAPI
621 ZwOpenKeyEx(
622 OUT PHANDLE KeyHandle,
623 IN ACCESS_MASK DesiredAccess,
624 IN POBJECT_ATTRIBUTES ObjectAttributes,
625 IN ULONG OpenOptions);
626
627 NTSYSAPI
628 NTSTATUS
629 NTAPI
630 ZwOpenKeyTransactedEx(
631 OUT PHANDLE KeyHandle,
632 IN ACCESS_MASK DesiredAccess,
633 IN POBJECT_ATTRIBUTES ObjectAttributes,
634 IN ULONG OpenOptions,
635 IN HANDLE TransactionHandle);
636
637 NTSYSAPI
638 NTSTATUS
639 NTAPI
640 ZwNotifyChangeMultipleKeys(
641 IN HANDLE MasterKeyHandle,
642 IN ULONG Count OPTIONAL,
643 IN OBJECT_ATTRIBUTES SubordinateObjects[] OPTIONAL,
644 IN HANDLE Event OPTIONAL,
645 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
646 IN PVOID ApcContext OPTIONAL,
647 OUT PIO_STATUS_BLOCK IoStatusBlock,
648 IN ULONG CompletionFilter,
649 IN BOOLEAN WatchTree,
650 OUT PVOID Buffer OPTIONAL,
651 IN ULONG BufferSize,
652 IN BOOLEAN Asynchronous);
653
654 NTSYSAPI
655 NTSTATUS
656 NTAPI
657 ZwQueryMultipleValueKey(
658 IN HANDLE KeyHandle,
659 IN OUT PKEY_VALUE_ENTRY ValueEntries,
660 IN ULONG EntryCount,
661 OUT PVOID ValueBuffer,
662 IN OUT PULONG BufferLength,
663 OUT PULONG RequiredBufferLength OPTIONAL);
664
665 NTSYSAPI
666 NTSTATUS
667 NTAPI
668 ZwRenameKey(
669 IN HANDLE KeyHandle,
670 IN PUNICODE_STRING NewName);
671
672 NTSYSAPI
673 NTSTATUS
674 NTAPI
675 ZwSetInformationKey(
676 IN HANDLE KeyHandle,
677 IN KEY_SET_INFORMATION_CLASS KeySetInformationClass,
678 IN PVOID KeySetInformation,
679 IN ULONG KeySetInformationLength);
680
681 #endif /* (NTDDI_VERSION >= NTDDI_WIN7) */