RtlCreateRegistryKey

NTSTATUS
RtlCreateRegistryKey(

IN ULONG RelativeTo,
IN PWSTR Path
);

RtlCreateRegistryKey adds a key object in the registry along a given relative path.

Parameters

RelativeTo

Specifies whether Path is an absolute registry path or is relative to a predefined key path as one of the following:

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.
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.

Path

Specifies the registry path according to the RelativeTo value. If RTL_REGISTRY_HANDLE is set, Path is a handle to be used directly.

Return Value

RtlCreateRegistryKey returns STATUS_SUCCESS if the key is created.

Comments

Callers of RtlCreateRegistryKey must be running at IRQL PASSIVE_LEVEL.

See Also

RtlCheckRegistryKey, RtlDeleteRegistryValue, RtlQueryRegistryValues, RtlWriteRegistryValue, ZwEnumerateKey, ZwOpenKey