Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
The RtlWriteRegistryValue routine writes caller-supplied data into the registry along the specified relative path at the given value name.
Syntax
NTSYSAPI NTSTATUS RtlWriteRegistryValue(
[in] ULONG RelativeTo,
[in] PCWSTR Path,
[in] PCWSTR ValueName,
[in] ULONG ValueType,
[in, optional] PVOID ValueData,
[in] ULONG ValueLength
);
Parameters
[in] RelativeTo
Specifies whether Path is an absolute registry path or is relative to a predefined 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. (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. |
[in] Path
Pointer to either an absolute registry path or a path relative to the known ___location specified by the RelativeTo parameter. If the RTL_REGISTRY_HANDLE flag is specified, this parameter is a registry handle for an already opened key to be used directly.
[in] ValueName
Pointer to the name of a subkey or value entry to be written into the registry.
[in] ValueType
Specifies a REG_XXX value that determines the type of the ValueName parameter. For a list of the possible values, see the Type parameter of ZwSetValueKey.
[in, optional] ValueData
Pointer to the name of a subkey or values for its value entries (or both) to be written into the registry.
[in] ValueLength
Specifies the number of bytes of ValueData to be written into the registry.
Return value
RtlWriteRegistryValue returns the status of the operation, either STATUS_SUCCESS or an error status.
Remarks
If the specified key does not exist, the routine attempts to create the key. For this attempt to succeed, the new key must be a direct subkey of the key that is referred to by the Path parameter, and the key that Path refers to must have been opened for KEY_CREATE_SUB_KEY access.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Available starting with Windows 2000. |
Target Platform | Universal |
Header | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Library | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |