WdfRegistryAssignValue 関数 (wdfregistry.h)
[KMDF と UMDF に適用]
WdfRegistryAssignValue メソッドは、レジストリ内の指定された値名に指定されたデータを割り当てます。
構文
NTSTATUS WdfRegistryAssignValue(
[in] WDFKEY Key,
[in] PCUNICODE_STRING ValueName,
[in] ULONG ValueType,
[in] ULONG ValueLength,
[in] PVOID Value
);
パラメーター
[in] Key
開かれたレジストリ キーを表すレジストリ キー オブジェクトへのハンドル。
[in] ValueName
値名を含む UNICODE_STRING 構造体へのポインター。
[in] ValueType
データ型を識別する値。 データ型の値の一覧については、KEY_VALUE_BASIC_INFORMATIONの Type メンバーを参照してください。
[in] ValueLength
Value が指すバッファーの長さ (バイト単位)。
[in] Value
ドライバーが提供するデータを含むバッファーへのポインター。
戻り値
操作が成功した場合、WdfRegistryAssignValue はSTATUS_SUCCESSを返します。 それ以外の場合、メソッドは次のいずれかの値を返す可能性があります。
リターン コード | 説明 |
---|---|
|
IRQL = PASSIVE_LEVEL で WdfRegistryAssignValue が呼び出されませんでした。 |
|
無効なパラメーターが指定されました。 |
|
ドライバーが、KEY_SET_VALUE アクセス権を持つレジストリ キーを開けませんでした。 |
このメソッドは、他の NTSTATUS 値を返す場合もあります。
ドライバーが無効なオブジェクト ハンドルを提供すると、バグ チェックが発生します。
注釈
ValueName パラメーターで指定されている値名が既に存在する場合、WdfRegistryAssignValue は値のデータを更新します。
レジストリ キー オブジェクトの詳細については、「 Framework-Based ドライバーでのレジストリの使用」を参照してください。
例
次のコード例では、バイナリ データとしてレジストリ値に 16 進数の123456を割り当てます。
ULONG val;
NTSTATUS status;
val = 0x123456;
status = WdfRegistryAssignValue(
Key,
&valueName,
REG_BINARY,
sizeof(val),
&val
);
要件
要件 | 値 |
---|---|
対象プラットフォーム | ユニバーサル |
最小 KMDF バージョン | 1.0 |
最小 UMDF バージョン | 2.0 |
Header | wdfregistry.h (Wdf.h を含む) |
Library | Wdf01000.sys (KMDF);WUDFx02000.dll (UMDF) |
IRQL | PASSIVE_LEVEL |
DDI コンプライアンス規則 | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |