struktur D3DDDI_QUERYREGISTRY_INFO (d3dukmdt.h)

Struktur D3DDDI_QUERYREGISTRY_INFO menunjukkan bagaimana D3DKMT_QUERYADAPTERINFO::p DriverPrivateData harus diinterpretasikan kembali saat D3DKMT_QUERYADAPTERINFO::TypeKMTQAITYPE_QUERYREGISTRY.

Sintaks

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;

Anggota

QueryType

[in] Nilai D3DDDI_QUERYREGISTRY_TYPE yang menunjukkan data mana yang akan diambil.

QueryType adalah bidang yang paling signifikan. Ini menunjukkan apakah registri atau jalur file sedang diambil, serta sarang registri dan jalur file tertentu.

Enum Kunci Registri:

  • D3DDDI_QUERYREGISTRY_SERVICEKEY
  • D3DDDI_QUERYREGISTRY_ADAPTERKEY

Enum Jalur File:

  • D3DDDI_QUERYREGISTRY_DRIVERSTOREPATH
  • D3DDDI_QUERYREGISTRY_DRIVERIMAGEPATH

QueryFlags

[in] Struktur D3DDDI_QUERYREGISTRY_FLAGS dengan bendera yang mengontrol bagaimana string diambil. QueryFlags dapat melakukan operasi tambahan, seperti menerjemahkan string yang diambil yang berisi jalur file ke lingkungan tamu.

ValueName[MAX_PATH]

[in] Saat mengambil informasi registri, ValueName harus menentukan nama nilai registri untuk diambil. Saat mengambil informasi jalur file, ValueName diabaikan.

ValueType

[in] Saat mengambil informasi registri, ValueType harus menentukan jenis nilai registri yang diharapkan yang sesuai dengan nama nilai registri. Saat mengambil informasi jalur file, ValueType harus 0 agar berhasil. Lihat Jenis Nilai Registri untuk detail selengkapnya.

PhysicalAdapterIndex

[in] Indeks adaptor fisik dalam rantai LDA.

OutputValueSize

[keluar] Ukuran data output diambil ke bidang ini, bahkan ketika tidak ada cukup ruang untuk mengambil data tersebut. Bidang ini paling berguna ketika data berukuran variabel sedang diambil.

Status

[keluar] Nilai D3DDDI_QUERYREGISTRY_STATUS yang menunjukkan status kueri.

Status kueri dikembalikan secara terpisah untuk menunjukkan berbagai jumlah data telah diambil. Tiga status pengembalian berikut ini paling penting untuk dipahami:

  • Saat QueryAdapterInfo mengembalikan STATUS_SUCCESS dan StatusD3DDDI_QUERYREGISTRY_STATUS_SUCCESS, semua bidang yang dimulai dengan Output valid.
  • Saat QueryAdapterInfo mengembalikan STATUS_SUCCESS dan StatusD3DDDI_QUERYREGISTRY_STATUS_BUFFER_OVERFLOW, hanya OutputValueSize yang valid.
  • Saat QueryAdapterInfo tidak mengembalikan STATUS_SUCCESS, semua bidang dibiarkan tidak dimodifikasi, kecuali Status dapat diubah menjadi D3DDDI_QUERYREGISTRY_STATUS_FAIL.

OutputDword

[keluar] Bidang kenyamanan untuk menginterpretasikan kembali data yang berhasil diambil. Ini paling berguna ketika DWORD registri sedang dibaca.

OutputQword

[keluar] Bidang kenyamanan untuk menginterpretasikan kembali data yang berhasil diambil. Ini paling berguna ketika registri QWORD sedang dibaca.

OutputString[1]

OutputBinary[1]

Keterangan

D3DDDI_QUERYREGISTRY_INFO digunakan untuk membaca registri untuk informasi yang umumnya di-cache selama penginstalan driver.

Alih-alih menggunakan metode OS mentah, driver mode pengguna dan komponen lainnya harus menggunakan teknik ini secara ke mana-mana pada versi OS di mana ia didukung. Ini memungkinkan OS untuk memaksimalkan kompatibilitas mode pengguna dengan perubahan dependensi dan skenario seperti lingkungan virtual.

Persyaratan

Persyaratan Nilai
Header d3dukmdt.h

Lihat juga

D3DDDI_QUERYREGISTRY_TYPE

D3DDDI_QUERYREGISTRY_FLAGS

D3DDDI_QUERYREGISTRY_STATUS

KMTQUERYADAPTERINFOTYPE

D3DKMT_QUERYADAPTERINFO