次の方法で共有


IRegistryKey::QueryRegistryValues メソッド (portcls.h)

QueryRegistryValues メソッドを使用すると、呼び出し元は 1 回の呼び出しでレジストリから複数の値を照会できます。

構文

NTSTATUS QueryRegistryValues(
  [in]           PRTL_QUERY_REGISTRY_TABLE QueryTable,
  [in, optional] PVOID                     Context
);

パラメーター

[in] QueryTable

1 つ以上のRTL_QUERY_REGISTRY_TABLE構造体の配列へのポインター。 (この構造体については、RtlQueryRegistryValuesで説明されています)。各構造体は、呼び出し元がクエリを実行しているレジストリ エントリの値名とサブキー名を指定します。 各構造体には、QueryRegistryValues メソッドが対応するレジストリ エントリに関する情報を使用して呼び出す QueryRoutine コールバック 呼び出し元が指定した関数ポインターも含まれています。 配列は、NULL Name メンバーを持つ構造体で終了する必要があります。

[in, optional] Context

これは呼び出し元が定義したコンテキスト値です。 QueryRegistryValues メソッドは、この値を呼び出しパラメーターとして各 QueryRoutine コールバックに渡します。 通常、コンテキスト値は、呼び出し元の QueryRoutine がアクセスするコンテキスト データを含む呼び出し元定義構造体へのポインターです。 コンテキスト値はポインター型 PVOID にキャストされますが、QueryRegistryValues メソッドはポインターの検証を実行しません。

戻り値

QueryRegistryValues は、QueryTable全体の処理で呼び出しが成功した場合にSTATUS_SUCCESSを返します。 それ以外の場合、メソッドは適切なエラー コードを返します。 次の表に、考えられる戻り状態コードの一部を示します。

リターン コード 形容
STATUS_INVALID_PARAMETER
メソッドに渡された QueryTable パラメーターが無効であることを示します。
STATUS_OBJECT_NAME_NOT_FOUND
QueryTable エントリのいずれかで指定されたオブジェクトがメソッドで見つからなかったことを示します。

備考

このメソッドは、呼び出し元が指定したコールバック ルーチンを使用して、レジストリ エントリの一覧の値を列挙します。 成功した場合、メソッドはリスト内のすべてのコールバック ルーチンを呼び出した後に戻ります。

QueryTable パラメーターは、RTL_QUERY_REGISTRY_TABLE構造体の配列を指します。 この構造体の最初のメンバーである QueryRoutine は、呼び出し元が指定したコールバック ルーチンへの関数ポインターです。 詳細については、「RtlQueryRegistryValues を参照してください。

必要条件

要件 価値
ターゲット プラットフォーム 万国
ヘッダー portcls.h (Portcls.h を含む)
IRQL PASSIVE_LEVEL

関連項目

IRegistryKey

RtlQueryRegistryValues する