D3DDDI_QUERYREGISTRY_INFO 結構 (d3dukmdt.h)

D3DDDI_QUERYREGISTRY_INFO 結構表示當 D3DKMT_QUERYADAPTERINFO::TypeKMTQAITYPE_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

[in]指出要擷取之數據的 D3DDDI_QUERYREGISTRY_TYPE 值。

QueryType 是最重要的欄位。 它會指出要擷取登錄或檔案路徑,以及哪些特定登錄區與檔案路徑。

登錄機碼列舉:

  • D3DDDI_QUERYREGISTRY_SERVICEKEY
  • D3DDDI_QUERYREGISTRY_ADAPTERKEY

檔案路徑列舉:

  • D3DDDI_QUERYREGISTRY_DRIVERSTOREPATH
  • D3DDDI_QUERYREGISTRY_DRIVERIMAGEPATH

QueryFlags

[in]具有旗標的 D3DDDI_QUERYREGISTRY_FLAGS 結構,可控制如何擷取字串。 QueryFlags 可以執行其他作業,例如將包含檔案路徑的擷取字串轉譯為客體環境。

ValueName[MAX_PATH]

[in]擷取登錄資訊時, ValueName 必須指定要擷取的登錄值名稱。 擷取檔案路徑資訊時,會忽略 ValueName

ValueType

[in]擷取登錄資訊時, ValueType 必須指定對應至登錄值名稱的預期登錄值型別。 擷取檔案路徑資訊時, ValueType 必須是 0 才能成功。 如需詳細資訊,請參閱 登錄值類型

PhysicalAdapterIndex

[in]LDA 鏈結中的實體配接器索引。

OutputValueSize

[out]即使沒有足夠的空間擷取該數據,輸出數據的大小也會擷取到此欄位。 擷取可變大小數據時,此欄位最有用。

Status

[out]指出查詢狀態 的D3DDDI_QUERYREGISTRY_STATUS 值。

查詢的狀態會個別傳回,以指出已擷取不同的數據量。 下列三個傳回狀態最重要:瞭解:

  • 當 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最大化使用者模式與相依性變更和虛擬化環境等案例的相容性。

規格需求

需求
標頭 d3dukmdt.h

另請參閱

D3DDDI_QUERYREGISTRY_TYPE

D3DDDI_QUERYREGISTRY_FLAGS

D3DDDI_QUERYREGISTRY_STATUS

KMTQUERYADAPTERINFOTYPE

D3DKMT_QUERYADAPTERINFO