RtlWriteRegistryValue 関数 (wdm.h)

RtlWriteRegistryValue ルーチンは、指定された値名の指定された相対パスに沿って、呼び出し元が指定したデータをレジストリに書き込みます。

構文

NTSYSAPI NTSTATUS RtlWriteRegistryValue(
  [in]           ULONG  RelativeTo,
  [in]           PCWSTR Path,
  [in]           PCWSTR ValueName,
  [in]           ULONG  ValueType,
  [in, optional] PVOID  ValueData,
  [in]           ULONG  ValueLength
);

パラメーター

[in] RelativeTo

Path が絶対レジストリ パスであるか、定義済みのパスに対する相対パスであるかを次のように指定します。

意味
RTL_REGISTRY_ABSOLUTE パスは絶対レジストリ パスです。
RTL_REGISTRY_SERVICES パスは \Registry\Machine\System\CurrentControlSet\Services を基準にしています
RTL_REGISTRY_CONTROL パスは \Registry\Machine\System\CurrentControlSet\Control を基準にしています
RTL_REGISTRY_WINDOWS_NT パスは\Registry\Machine\Software\Microsoft\Windows NT\CurrentVersion を基準にしています
RTL_REGISTRY_DEVICEMAP パスは \Registry\Machine\Hardware\DeviceMap を基準にしています。
RTL_REGISTRY_USER パスは \Registry\User\CurrentUser を基準にしています。 (システム プロセスの場合、これは \Users\ です。既定値)。)
RTL_REGISTRY_OPTIONAL このパラメーターと Path パラメーターによって参照されるキーが省略可能であることを指定します。
RTL_REGISTRY_HANDLE Path パラメーターが実際に使用するレジストリ ハンドルであることを指定します。 この値は省略可能です。

[in] Path

RelativeTo パラメーターで指定された既知の場所に対する絶対レジストリ パスまたは相対パスへのポインター。 RTL_REGISTRY_HANDLE フラグが指定されている場合、このパラメーターは、既に開かれているキーを直接使用するためのレジストリ ハンドルです。

[in] ValueName

レジストリに書き込まれるサブキーまたは値エントリの名前へのポインター。

[in] ValueType

ValueName パラメーターの型を決定するREG_XXX 値を指定します。 使用可能な値の一覧については、ZwSetValueKeyType パラメーターを参照してください。

[in, optional] ValueData

レジストリに書き込まれるサブキーまたはその値エントリ (またはその両方) の名前へのポインター。

[in] ValueLength

レジストリに書き込む ValueData のバイト数を指定します。

戻り値

RtlWriteRegistryValue は、操作の状態 (STATUS_SUCCESSまたはエラー状態) を返します。

注釈

指定したキーが存在しない場合、ルーチンはキーの作成を試みます。 この試行を成功させるには、新しいキーが Path パラメーターによって参照されるキーの直接サブキーであり、 Path が参照するキーがKEY_CREATE_SUB_KEYアクセス用に開かれている必要があります。

要件

要件
サポートされている最小のクライアント Windows 2000 以降で使用できます。
対象プラットフォーム ユニバーサル
Header wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む)
Library NtosKrnl.lib
[DLL] NtosKrnl.exe
IRQL PASSIVE_LEVEL

こちらもご覧ください

RtlCheckRegistryKey

RtlCreateRegistryKey

RtlDeleteRegistryValue

RtlQueryRegistryValues

ZwCreateKey

ZwOpenKey

ZwSetValueKey