The RtlCreateRegistryKey routine adds a key object in the registry along a given relative path.
NTSTATUS
RtlCreateRegistryKey(
IN ULONG RelativeTo,
IN PWSTR Path
);
| Value | Meaning |
|---|---|
| RTL_REGISTRY_ABSOLUTE | |
| Path is an absolute registry path. | |
| RTL_REGISTRY_SERVICES | |
| Path is relative to \Registry\Machine\System\CurrentControlSet\Services. | |
| RTL_REGISTRY_CONTROL | |
| Path is relative to \Registry\Machine\System\CurrentControlSet\Control. | |
| RTL_REGISTRY_WINDOWS_NT | |
| Path is relative to \Registry\Machine\Software\Microsoft\ Windows NT\CurrentVersion. |
|
| RTL_REGISTRY_DEVICEMAP | |
| Path is relative to \Registry\Machine\Hardware\DeviceMap. | |
| RTL_REGISTRY_USER | |
| Path is relative to \Registry\User\CurrentUser. (For a system process, this is \Users\.Default.) | |
| RTL_REGISTRY_OPTIONAL | |
| Specifies that the key referenced by this parameter and the Path parameter are optional. | |
| RTL_REGISTRY_HANDLE | |
| Specifies that the Path parameter is actually a registry handle to use. This value is optional. | |
RtlCreateRegistryKey returns STATUS_SUCCESS if the key is created.
Declared in ntddk.h. Include ntddk.h.
Callers of RtlCreateRegistryKey must be running at IRQL = PASSIVE_LEVEL.
RtlCheckRegistryKey, RtlDeleteRegistryValue, RtlQueryRegistryValues, RtlWriteRegistryValue, ZwEnumerateKey, ZwOpenKey