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_READKEY_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を返します。 その他の戻り値は次のとおりです。

リターン コード 説明
STATUS_ACCESS_DENIED
UMDF ドライバーは 、DesiredAccess パラメーターに次のいずれかのフラグを指定しました。
  • GENERIC_WRITE
  • KEY_CREATE_SUBKEY
  • WRITE_DAC

上記の値は 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)

こちらもご覧ください

ACCESS_MASK

WDF_OBJECT_ATTRIBUTES

WdfDriverCreate

WdfDriverGetRegistryPath

WdfGetDriver

WdfRegistryClose