WdfDriverOpenParametersRegistryKey 関数 (wdfdriver.h)
[KMDF と UMDF に適用]
WdfDriverOpenParametersRegistryKey メソッドは、ドライバーの Parameters レジストリ キーを開き、キーを表すフレームワーク レジストリ キー オブジェクトへのハンドルを取得します。
構文
NTSTATUS WdfDriverOpenParametersRegistryKey(
[in] WDFDRIVER Driver,
[in] ACCESS_MASK DesiredAccess,
[in, optional] PWDF_OBJECT_ATTRIBUTES KeyAttributes,
[out] WDFKEY *Key
);
パラメーター
[in] Driver
以前の WdfDriverCreate または WdfGetDriver の呼び出しからドライバーが取得したドライバーのフレームワーク ドライバー オブジェクトへのハンドル。
[in] DesiredAccess
Parameters レジストリ キーのアクセス マスクを指定するACCESS_MASK型指定された値。
KMDF ドライバーは通常、 KEY_READ、 KEY_WRITE、またはKEY_READを要求します 。 |KEY_WRITE。
UMDF ドライバーを作成する場合は、 KEY_READ または KEY_READ を使用します。 |KEY_SET_VALUE。
ベスト プラクティスとして、ドライバーに必要なアクセスの種類のみを要求します。
[in, optional] KeyAttributes
フレームワーク レジストリ キー オブジェクトのオブジェクト属性を指定する呼び出し元によって割り当てられた WDF_OBJECT_ATTRIBUTES 構造体へのポインター。 このパラメーターは省略可能であり、WDF_NO_OBJECT_ATTRIBUTESできます。
[out] Key
フレームワーク レジストリ キー オブジェクトへのハンドルを受け取る場所へのポインター。
戻り値
操作が成功した場合、WdfDriverOpenParametersRegistryKey はSTATUS_SUCCESSを返します。 その他の戻り値は次のとおりです。
リターン コード | 説明 |
---|---|
|
UMDF ドライバーは 、DesiredAccess パラメーターに次のいずれかのフラグを指定しました。
上記の値は UMDF ドライバーでは無効であるため、GENERIC_ALL や STANDARD_RIGHTS_ALL などのユニバーサル フラグを指定すると、 WdfDriverOpenParametersRegistryKey もこの戻り値で失敗します。 |
戻り値の詳細については、「 フレームワーク オブジェクト作成エラー」を参照してください。
このメソッドは、他の NTSTATUS 値も返す場合があります。
KMDF ドライバーがドライバーで無効なハンドルを指定した場合、システム バグ チェックが発生します。
注釈
ドライバーの パラメーター キーは、レジストリの サービス ツリーにあります。 ドライバーの Parameters キーが存在しない場合は、 WdfDriverOpenParametersRegistryKey メソッドによって作成されます。
ドライバーが Parameters レジストリ キーの使用を完了したら、ドライバーは WdfRegistryClose を呼び出す必要があります。
注意
UMDF では、サブキーの作成はサポートされていません。
レジストリの詳細については、「 Framework-Based ドライバーでのレジストリの使用」を参照してください。
例
次のコード例では、ドライバーの Parameters レジストリ キーを開き、そのキーを表すフレームワーク レジストリ キー オブジェクトへのハンドルを取得します。
WDFKEY hKey;
status = WdfDriverOpenParametersRegistryKey(
Driver,
STANDARD_RIGHTS_ALL,
WDF_NO_OBJECT_ATTRIBUTES,
&hKey
);
要件
要件 | 値 |
---|---|
対象プラットフォーム | ユニバーサル |
最小 KMDF バージョン | 1.0 |
最小 UMDF バージョン | 2.0 |
Header | wdfdriver.h (Wdf.h を含む) |
Library | Wdf01000.sys (KMDF);WUDFx02000.dll (UMDF) |
IRQL | PASSIVE_LEVEL |
DDI コンプライアンス規則 | DriverCreate(kmdf)、 KmdfIrql(kmdf)、 KmdfIrql2(kmdf)、KmdfIrqlExplicit(kmdf) |