ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

cmfuncs.h
Go to the documentation of this file.
00001 /*++ NDK Version: 0098
00002 
00003 Copyright (c) Alex Ionescu.  All rights reserved.
00004 
00005 Header Name:
00006 
00007     cmfuncs.h
00008 
00009 Abstract:
00010 
00011     Function definitions for the Configuration Manager.
00012 
00013 Author:
00014 
00015     Alex Ionescu (alexi@tinykrnl.org) - Updated - 27-Feb-2006
00016 
00017 --*/
00018 
00019 #ifndef _CMFUNCS_H
00020 #define _CMFUNCS_H
00021 
00022 //
00023 // Dependencies
00024 //
00025 #include <umtypes.h>
00026 #include <cmtypes.h>
00027 
00028 //
00029 // Native calls
00030 //
00031 NTSTATUS
00032 NTAPI
00033 NtCompactKeys(
00034     IN ULONG Count,
00035     IN PHANDLE KeyArray
00036 );
00037 
00038 NTSTATUS
00039 NTAPI
00040 NtCompressKey(
00041     IN HANDLE Key
00042 );
00043 
00044 NTSYSCALLAPI
00045 NTSTATUS
00046 NTAPI
00047 NtCreateKey(
00048     OUT PHANDLE KeyHandle,
00049     IN ACCESS_MASK DesiredAccess,
00050     IN POBJECT_ATTRIBUTES ObjectAttributes,
00051     IN ULONG TitleIndex,
00052     IN PUNICODE_STRING Class OPTIONAL,
00053     IN ULONG CreateOptions,
00054     IN PULONG Disposition OPTIONAL
00055 );
00056 
00057 NTSYSCALLAPI
00058 NTSTATUS
00059 NTAPI
00060 NtDeleteKey(
00061     IN HANDLE KeyHandle
00062 );
00063 
00064 NTSYSCALLAPI
00065 NTSTATUS
00066 NTAPI
00067 NtDeleteValueKey(
00068     IN HANDLE KeyHandle,
00069     IN PUNICODE_STRING ValueName
00070 );
00071 
00072 NTSYSCALLAPI
00073 NTSTATUS
00074 NTAPI
00075 NtEnumerateKey(
00076     IN HANDLE KeyHandle,
00077     IN ULONG Index,
00078     IN KEY_INFORMATION_CLASS KeyInformationClass,
00079     OUT PVOID KeyInformation,
00080     IN ULONG Length,
00081     OUT PULONG ResultLength
00082 );
00083 
00084 NTSYSCALLAPI
00085 NTSTATUS
00086 NTAPI
00087 NtEnumerateValueKey(
00088     IN HANDLE KeyHandle,
00089     IN ULONG Index,
00090     IN KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass,
00091     OUT PVOID KeyValueInformation,
00092     IN ULONG Length,
00093     OUT PULONG ResultLength
00094 );
00095 
00096 NTSYSCALLAPI
00097 NTSTATUS
00098 NTAPI
00099 NtFlushKey(
00100     IN HANDLE KeyHandle
00101 );
00102 
00103 NTSYSCALLAPI
00104 NTSTATUS
00105 NTAPI
00106 NtGetPlugPlayEvent(
00107     IN ULONG Reserved1,
00108     IN ULONG Reserved2,
00109     OUT PPLUGPLAY_EVENT_BLOCK Buffer,
00110     IN ULONG BufferSize
00111 );
00112 
00113 NTSYSCALLAPI
00114 NTSTATUS
00115 NTAPI
00116 NtInitializeRegistry(
00117     USHORT Flag
00118 );
00119 
00120 NTSYSCALLAPI
00121 NTSTATUS
00122 NTAPI
00123 NtLoadKey(
00124     IN POBJECT_ATTRIBUTES KeyObjectAttributes,
00125     IN POBJECT_ATTRIBUTES FileObjectAttributes
00126 );
00127 
00128 NTSYSCALLAPI
00129 NTSTATUS
00130 NTAPI
00131 NtLoadKey2(
00132     IN POBJECT_ATTRIBUTES KeyObjectAttributes,
00133     IN POBJECT_ATTRIBUTES FileObjectAttributes,
00134     IN ULONG Flags
00135 );
00136 
00137 NTSTATUS
00138 NTAPI
00139 NtLoadKeyEx(
00140     IN POBJECT_ATTRIBUTES TargetKey,
00141     IN POBJECT_ATTRIBUTES SourceFile,
00142     IN ULONG Flags,
00143     IN HANDLE TrustClassKey
00144 );
00145 
00146 NTSTATUS
00147 NTAPI
00148 NtLockProductActivationKeys(
00149     IN PULONG pPrivateVer,
00150     IN PULONG pSafeMode
00151 );
00152 
00153 NTSTATUS
00154 NTAPI
00155 NtLockRegistryKey(
00156     IN HANDLE KeyHandle
00157 );
00158 
00159 NTSYSCALLAPI
00160 NTSTATUS
00161 NTAPI
00162 NtNotifyChangeKey(
00163     IN HANDLE KeyHandle,
00164     IN HANDLE Event,
00165     IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
00166     IN PVOID ApcContext OPTIONAL,
00167     OUT PIO_STATUS_BLOCK IoStatusBlock,
00168     IN ULONG CompletionFilter,
00169     IN BOOLEAN Asynchroneous,
00170     OUT PVOID ChangeBuffer,
00171     IN ULONG Length,
00172     IN BOOLEAN WatchSubtree
00173 );
00174 
00175 NTSTATUS
00176 NTAPI
00177 NtNotifyChangeMultipleKeys(
00178     IN HANDLE MasterKeyHandle,
00179     IN ULONG Count,
00180     IN POBJECT_ATTRIBUTES SlaveObjects,
00181     IN HANDLE Event,
00182     IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
00183     IN PVOID ApcContext OPTIONAL,
00184     OUT PIO_STATUS_BLOCK IoStatusBlock,
00185     IN ULONG CompletionFilter,
00186     IN BOOLEAN WatchTree,
00187     OUT PVOID Buffer,
00188     IN ULONG Length,
00189     IN BOOLEAN Asynchronous
00190 );
00191 
00192 NTSYSCALLAPI
00193 NTSTATUS
00194 NTAPI
00195 NtOpenKey(
00196     OUT PHANDLE KeyHandle,
00197     IN ACCESS_MASK DesiredAccess,
00198     IN POBJECT_ATTRIBUTES ObjectAttributes
00199 );
00200 
00201 NTSYSCALLAPI
00202 NTSTATUS
00203 NTAPI
00204 NtPlugPlayControl(
00205     IN PLUGPLAY_CONTROL_CLASS PlugPlayControlClass,
00206     IN OUT PVOID Buffer,
00207     IN ULONG BufferSize
00208 );
00209 
00210 NTSYSCALLAPI
00211 NTSTATUS
00212 NTAPI
00213 NtQueryKey(
00214     IN HANDLE KeyHandle,
00215     IN KEY_INFORMATION_CLASS KeyInformationClass,
00216     OUT PVOID KeyInformation,
00217     IN ULONG Length,
00218     OUT PULONG ResultLength
00219 );
00220 
00221 NTSYSCALLAPI
00222 NTSTATUS
00223 NTAPI
00224 NtQueryMultipleValueKey(
00225     IN HANDLE KeyHandle,
00226     IN OUT PKEY_VALUE_ENTRY ValueList,
00227     IN ULONG NumberOfValues,
00228     OUT PVOID Buffer,
00229     IN OUT PULONG Length,
00230     OUT PULONG ReturnLength
00231 );
00232 
00233 NTSTATUS
00234 NTAPI
00235 NtQueryOpenSubKeys(
00236     IN POBJECT_ATTRIBUTES TargetKey,
00237     OUT PULONG HandleCount
00238 );
00239 
00240 NTSTATUS
00241 NTAPI
00242 NtQueryOpenSubKeysEx(
00243     IN POBJECT_ATTRIBUTES TargetKey,
00244     IN ULONG BufferLength,
00245     IN PVOID Buffer,
00246     IN PULONG RequiredSize
00247 );
00248 
00249 NTSYSCALLAPI
00250 NTSTATUS
00251 NTAPI
00252 NtQueryValueKey(
00253     IN HANDLE KeyHandle,
00254     IN PUNICODE_STRING ValueName,
00255     IN KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass,
00256     OUT PVOID KeyValueInformation,
00257     IN ULONG Length,
00258     OUT PULONG ResultLength
00259 );
00260 
00261 NTSYSCALLAPI
00262 NTSTATUS
00263 NTAPI
00264 NtRenameKey(
00265     IN HANDLE KeyHandle,
00266     IN PUNICODE_STRING ReplacementName
00267 );
00268 
00269 NTSYSCALLAPI
00270 NTSTATUS
00271 NTAPI
00272 NtReplaceKey(
00273     IN POBJECT_ATTRIBUTES ObjectAttributes,
00274     IN HANDLE Key,
00275     IN POBJECT_ATTRIBUTES ReplacedObjectAttributes
00276 );
00277 
00278 NTSYSCALLAPI
00279 NTSTATUS
00280 NTAPI
00281 NtRestoreKey(
00282     IN HANDLE KeyHandle,
00283     IN HANDLE FileHandle,
00284     IN ULONG RestoreFlags
00285 );
00286 
00287 NTSYSCALLAPI
00288 NTSTATUS
00289 NTAPI
00290 NtSaveKey(
00291     IN HANDLE KeyHandle,
00292     IN HANDLE FileHandle
00293 );
00294 
00295 NTSYSCALLAPI
00296 NTSTATUS
00297 NTAPI
00298 NtSaveKeyEx(
00299     IN HANDLE KeyHandle,
00300     IN HANDLE FileHandle,
00301     IN ULONG Flags
00302 );
00303 
00304 
00305 NTSTATUS
00306 NTAPI
00307 NtSaveMergedKeys(
00308     IN HANDLE HighPrecedenceKeyHandle,
00309     IN HANDLE LowPrecedenceKeyHandle,
00310     IN HANDLE FileHandle
00311 );
00312 
00313 NTSYSCALLAPI
00314 NTSTATUS
00315 NTAPI
00316 NtSetInformationKey(
00317     IN HANDLE KeyHandle,
00318     IN KEY_SET_INFORMATION_CLASS KeyInformationClass,
00319     IN PVOID KeyInformation,
00320     IN ULONG KeyInformationLength
00321 );
00322 
00323 NTSYSCALLAPI
00324 NTSTATUS
00325 NTAPI
00326 NtSetValueKey(
00327     IN HANDLE KeyHandle,
00328     IN PUNICODE_STRING ValueName,
00329     IN ULONG TitleIndex OPTIONAL,
00330     IN ULONG Type,
00331     IN PVOID Data,
00332     IN ULONG DataSize
00333 );
00334 
00335 NTSYSCALLAPI
00336 NTSTATUS
00337 NTAPI
00338 NtUnloadKey(
00339     IN POBJECT_ATTRIBUTES KeyObjectAttributes
00340 );
00341 
00342 NTSTATUS
00343 NTAPI
00344 NtUnloadKey2(
00345     IN POBJECT_ATTRIBUTES TargetKey,
00346     IN ULONG Flags
00347 );
00348 
00349 NTSTATUS
00350 NTAPI
00351 NtUnloadKeyEx(
00352     IN POBJECT_ATTRIBUTES TargetKey,
00353     IN HANDLE Event
00354 );
00355 
00356 #ifdef NTOS_MODE_USER
00357 NTSYSAPI
00358 NTSTATUS
00359 NTAPI
00360 ZwCreateKey(
00361     OUT PHANDLE KeyHandle,
00362     IN ACCESS_MASK DesiredAccess,
00363     IN POBJECT_ATTRIBUTES ObjectAttributes,
00364     IN ULONG TitleIndex,
00365     IN PUNICODE_STRING Class OPTIONAL,
00366     IN ULONG CreateOptions,
00367     IN PULONG Disposition OPTIONAL
00368 );
00369 
00370 NTSYSAPI
00371 NTSTATUS
00372 NTAPI
00373 ZwDeleteKey(
00374     IN HANDLE KeyHandle
00375 );
00376 
00377 NTSYSAPI
00378 NTSTATUS
00379 NTAPI
00380 ZwDeleteValueKey(
00381     IN HANDLE KeyHandle,
00382     IN PUNICODE_STRING ValueName
00383 );
00384 
00385 NTSYSAPI
00386 NTSTATUS
00387 NTAPI
00388 ZwEnumerateKey(
00389     IN HANDLE KeyHandle,
00390     IN ULONG Index,
00391     IN KEY_INFORMATION_CLASS KeyInformationClass,
00392     OUT PVOID KeyInformation,
00393     IN ULONG Length,
00394     OUT PULONG ResultLength
00395 );
00396 
00397 NTSYSAPI
00398 NTSTATUS
00399 NTAPI
00400 ZwEnumerateValueKey(
00401     IN HANDLE KeyHandle,
00402     IN ULONG Index,
00403     IN KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass,
00404     OUT PVOID KeyValueInformation,
00405     IN ULONG Length,
00406     OUT PULONG ResultLength
00407 );
00408 
00409 NTSYSAPI
00410 NTSTATUS
00411 NTAPI
00412 ZwFlushKey(
00413     IN HANDLE KeyHandle
00414 );
00415 
00416 NTSYSAPI
00417 NTSTATUS
00418 NTAPI
00419 ZwGetPlugPlayEvent(
00420     IN ULONG Reserved1,
00421     IN ULONG Reserved2,
00422     OUT PPLUGPLAY_EVENT_BLOCK Buffer,
00423     IN ULONG BufferSize
00424 );
00425 
00426 NTSYSAPI
00427 NTSTATUS
00428 NTAPI
00429 ZwLoadKey(
00430     IN POBJECT_ATTRIBUTES KeyObjectAttributes,
00431     IN POBJECT_ATTRIBUTES FileObjectAttributes
00432 );
00433 
00434 NTSYSAPI
00435 NTSTATUS
00436 NTAPI
00437 ZwLoadKey2(
00438     IN POBJECT_ATTRIBUTES KeyObjectAttributes,
00439     IN POBJECT_ATTRIBUTES FileObjectAttributes,
00440     IN ULONG Flags
00441 );
00442 
00443 NTSYSAPI
00444 NTSTATUS
00445 NTAPI
00446 ZwNotifyChangeKey(
00447     IN HANDLE KeyHandle,
00448     IN HANDLE Event,
00449     IN PIO_APC_ROUTINE ApcRoutine OPTIONAL,
00450     IN PVOID ApcContext OPTIONAL,
00451     OUT PIO_STATUS_BLOCK IoStatusBlock,
00452     IN ULONG CompletionFilter,
00453     IN BOOLEAN Asynchroneous,
00454     OUT PVOID ChangeBuffer,
00455     IN ULONG Length,
00456     IN BOOLEAN WatchSubtree
00457 );
00458 
00459 NTSYSAPI
00460 NTSTATUS
00461 NTAPI
00462 ZwOpenKey(
00463     OUT PHANDLE KeyHandle,
00464     IN ACCESS_MASK DesiredAccess,
00465     IN POBJECT_ATTRIBUTES ObjectAttributes
00466 );
00467 
00468 NTSYSAPI
00469 NTSTATUS
00470 NTAPI
00471 ZwPlugPlayControl(
00472     IN PLUGPLAY_CONTROL_CLASS PlugPlayControlClass,
00473     IN OUT PVOID Buffer,
00474     IN ULONG BufferSize
00475 );
00476 
00477 NTSYSAPI
00478 NTSTATUS
00479 NTAPI
00480 ZwQueryKey(
00481     IN HANDLE KeyHandle,
00482     IN KEY_INFORMATION_CLASS KeyInformationClass,
00483     OUT PVOID KeyInformation,
00484     IN ULONG Length,
00485     OUT PULONG ResultLength
00486 );
00487 
00488 NTSYSAPI
00489 NTSTATUS
00490 NTAPI
00491 ZwQueryMultipleValueKey(
00492     IN HANDLE KeyHandle,
00493     IN OUT PKEY_VALUE_ENTRY ValueList,
00494     IN ULONG NumberOfValues,
00495     OUT PVOID Buffer,
00496     IN OUT PULONG Length,
00497     OUT PULONG ReturnLength
00498 );
00499 
00500 NTSYSAPI
00501 NTSTATUS
00502 NTAPI
00503 ZwQueryValueKey(
00504     IN HANDLE KeyHandle,
00505     IN PUNICODE_STRING ValueName,
00506     IN KEY_VALUE_INFORMATION_CLASS KeyValueInformationClass,
00507     OUT PVOID KeyValueInformation,
00508     IN ULONG Length,
00509     OUT PULONG ResultLength
00510 );
00511 
00512 NTSYSAPI
00513 NTSTATUS
00514 NTAPI
00515 ZwReplaceKey(
00516     IN POBJECT_ATTRIBUTES ObjectAttributes,
00517     IN HANDLE Key,
00518     IN POBJECT_ATTRIBUTES ReplacedObjectAttributes
00519 );
00520 
00521 NTSYSAPI
00522 NTSTATUS
00523 NTAPI
00524 ZwRestoreKey(
00525     IN HANDLE KeyHandle,
00526     IN HANDLE FileHandle,
00527     IN ULONG RestoreFlags
00528 );
00529 
00530 NTSYSAPI
00531 NTSTATUS
00532 NTAPI
00533 ZwSaveKey(
00534     IN HANDLE KeyHandle,
00535     IN HANDLE FileHandle
00536 );
00537 
00538 NTSYSAPI
00539 NTSTATUS
00540 NTAPI
00541 ZwSaveKeyEx(
00542     IN HANDLE KeyHandle,
00543     IN HANDLE FileHandle,
00544     IN ULONG Flags
00545 );
00546 
00547 NTSYSAPI
00548 NTSTATUS
00549 NTAPI
00550 ZwSetInformationKey(
00551     IN HANDLE KeyHandle,
00552     IN KEY_SET_INFORMATION_CLASS KeyInformationClass,
00553     IN PVOID KeyInformation,
00554     IN ULONG KeyInformationLength
00555 );
00556 
00557 NTSYSAPI
00558 NTSTATUS
00559 NTAPI
00560 ZwSetValueKey(
00561     IN HANDLE KeyHandle,
00562     IN PUNICODE_STRING ValueName,
00563     IN ULONG TitleIndex OPTIONAL,
00564     IN ULONG Type,
00565     IN PVOID Data,
00566     IN ULONG DataSize
00567 );
00568 #endif
00569 
00570 NTSYSAPI
00571 NTSTATUS
00572 NTAPI
00573 ZwInitializeRegistry(
00574     USHORT Flag
00575 );
00576 
00577 NTSYSAPI
00578 NTSTATUS
00579 NTAPI
00580 ZwUnloadKey(
00581     IN POBJECT_ATTRIBUTES KeyObjectAttributes
00582 );
00583 
00584 #endif

Generated on Sat May 26 2012 04:29:28 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.