次の方法で共有


WdfRegistryQueryULong 関数 (wdfregistry.h)

[KMDF と UMDF に適用]

WdfRegistryQueryULong メソッドは、指定されたレジストリ値に現在割り当てられている署名されていない長い単語 (REG_DWORD) データを取得し、指定した場所にデータをコピーします。

構文

NTSTATUS WdfRegistryQueryULong(
  [in]  WDFKEY           Key,
  [in]  PCUNICODE_STRING ValueName,
  [out] PULONG           Value
);

パラメーター

[in] Key

開かれたレジストリ キーを表すレジストリ キー オブジェクトへのハンドル。

[in] ValueName

レジストリ値の名前を含む UNICODE_STRING 構造体へのポインター。

[out] Value

ValueName が指定するレジストリ値に割り当てられているデータを受け取る場所へのポインター。

戻り値

操作が成功した場合、WdfRegistryQueryULong はSTATUS_SUCCESSを返します。 それ以外の場合、メソッドは次のいずれかの値を返す可能性があります。

リターン コード 説明
STATUS_INVALID_DEVICE_REQUEST

WdfRegistryQueryULong は IRQL = PASSIVE_LEVELで呼び出されませんでした。

STATUS_INVALID_PARAMETER
無効なパラメーターが指定されました。
STATUS_INSUFFICIENT_RESOURCES
操作を完了するためのメモリが不足していました。
STATUS_ACCESS_DENIED
ドライバーが、KEY_QUERY_VALUE、KEY_READ、またはKEY_ALL_ACCESSアクセス権を持つレジストリ キーを開けませんでした。
STATUS_OBJECT_TYPE_MISMATCH
ValueName パラメーターが指定したレジストリ値のデータ型がREG_DWORDされませんでした。
STATUS_OBJECT_NAME_NOT_FOUND
レジストリ値が使用できませんでした。
 

このメソッドは、他の NTSTATUS 値を返す場合もあります。

ドライバーが無効なオブジェクト ハンドルを提供すると、バグ チェックが発生します。

注釈

レジストリ キー オブジェクトの詳細については、「 WDF ドライバーでのレジストリの使用」を参照してください。

次のコード例では、 NumberOfThings 値に現在割り当てられているデータを取得します。

NTSTATUS  status;
ULONG  value;
DECLARE_CONST_UNICODE_STRING(valueName, L"NumberOfThings");

status = WdfRegistryQueryULong(
                               hKey,
                               &valueName,
                               &value
                               );

要件

要件
対象プラットフォーム ユニバーサル
最小 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)

こちらもご覧ください

UNICODE_STRING

WdfRegistryQueryMemory

WdfRegistryQueryMultiString

WdfRegistryQueryString

WdfRegistryQueryUnicodeString

WdfRegistryQueryValue