D3DDDI_QUERYREGISTRY_INFO 構造体 (d3dukmdt.h)
D3DDDI_QUERYREGISTRY_INFO構造体は、D3DKMT_QUERYADAPTERINFO::Type がKMTQAITYPE_QUERYREGISTRYされたときにD3DKMT_QUERYADAPTERINFO::p DriverPrivateData を再解釈する方法を示します。
構文
typedef struct _D3DDDI_QUERYREGISTRY_INFO {
D3DDDI_QUERYREGISTRY_TYPE QueryType;
D3DDDI_QUERYREGISTRY_FLAGS QueryFlags;
WCHAR ValueName[MAX_PATH];
ULONG ValueType;
ULONG PhysicalAdapterIndex;
ULONG OutputValueSize;
D3DDDI_QUERYREGISTRY_STATUS Status;
union {
DWORD OutputDword;
D3DKMT_ALIGN64 UINT64 OutputQword;
WCHAR OutputString[1];
BYTE OutputBinary[1];
};
} D3DDDI_QUERYREGISTRY_INFO;
メンバー
QueryType
[入力]取得するデータを示す D3DDDI_QUERYREGISTRY_TYPE 値。
QueryType は最も重要なフィールドです。 これは、レジストリパスまたはファイルパスが取得されているかどうか、および特定のレジストリハイブとファイルパスを示します。
レジストリ キー列挙型:
- D3DDDI_QUERYREGISTRY_SERVICEKEY
- D3DDDI_QUERYREGISTRY_ADAPTERKEY
ファイル パス列挙型:
- D3DDDI_QUERYREGISTRY_DRIVERSTOREPATH
- D3DDDI_QUERYREGISTRY_DRIVERIMAGEPATH
QueryFlags
[入力]文字列の取得方法を制御するフラグを持つ D3DDDI_QUERYREGISTRY_FLAGS 構造体。 QueryFlags では、ファイル パスを含む取得した文字列をゲスト環境に変換するなどの追加の操作を実行できます。
ValueName[MAX_PATH]
[入力]レジストリ情報を取得する場合、 ValueName は 取得するレジストリ値の名前を指定する必要があります。 ファイル パス情報を取得する場合、 ValueName は無視されます。
ValueType
[入力]レジストリ情報を取得する場合、 ValueType は、レジストリ値の名前に対応する予期されるレジストリ値の型を指定する必要があります。 ファイル パス情報を取得する場合、 成功するには ValueType が 0 である必要があります。 詳細については、「 レジストリ値の型 」を参照してください。
PhysicalAdapterIndex
[入力]LDA チェーン内の物理アダプター インデックス。
OutputValueSize
[out]出力データのサイズは、そのデータを取得するのに十分な領域がない場合でも、このフィールドに取得されます。 このフィールドは、可変サイズのデータを取得するときに最も便利です。
Status
[out]クエリの状態を示す D3DDDI_QUERYREGISTRY_STATUS 値。
クエリの状態は、さまざまな量のデータが取得されたことを示すために個別に返されます。 次の 3 つの戻り値の状態を理解することが最も重要です。
- QueryAdapterInfo がSTATUS_SUCCESSを返し 、Status が D3DDDI_QUERYREGISTRY_STATUS_SUCCESS場合、 Output で始まるすべてのフィールドが有効になります。
- QueryAdapterInfo がSTATUS_SUCCESSを返し 、Status が D3DDDI_QUERYREGISTRY_STATUS_BUFFER_OVERFLOW場合、 OutputValueSize のみが有効です。
- QueryAdapterInfo がSTATUS_SUCCESSを返さない場合、Status をD3DDDI_QUERYREGISTRY_STATUS_FAILに変更する場合を除き、すべてのフィールドは変更されません。
OutputDword
[out]正常に取得されたデータを再解釈するための便利なフィールド。 これは、レジストリ DWORD が読み取られている場合に最も便利です。
OutputQword
[out]正常に取得されたデータを再解釈するための便利なフィールド。 レジストリ QWORD が読み取られている場合に最も便利です。
OutputString[1]
OutputBinary[1]
注釈
D3DDDI_QUERYREGISTRY_INFO は、ドライバーのインストール中に一般的にキャッシュされる情報のレジストリを読み取るために使用されます。
生の OS メソッドを使用する代わりに、ユーザー モード ドライバーやその他のコンポーネントは、サポートされている OS バージョンでこの手法をユビキタスに使用する必要があります。 これにより、OS は、依存関係の変更や仮想化された環境などのシナリオとのユーザー モードの互換性を最大化できます。
要件
要件 | 値 |
---|---|
Header | d3dukmdt.h |