DXGKCB_QUERY_SERVICES fungsi panggilan balik (dispmprt.h)
Fungsi DxgkCbQueryServices mengembalikan antarmuka yang diimplementasikan oleh driver port tampilan.
Sintaks
DXGKCB_QUERY_SERVICES DxgkcbQueryServices;
NTSTATUS DxgkcbQueryServices(
[in] HANDLE DeviceHandle,
[in] DXGK_SERVICES ServicesType,
[in, out] PINTERFACE Interface
)
{...}
Parameter
[in] DeviceHandle
Handel yang mewakili adaptor tampilan. Driver miniport tampilan sebelumnya memperoleh handel ini di anggota DeviceHandle dari struktur DXGKRNL_INTERFACE yang diteruskan ke DxgkDdiStartDevice.
[in] ServicesType
Konstanta dari enumerasi DXGK_SERVICES yang menentukan antarmuka mana yang diminta.
[in, out] Interface
Penunjuk ke struktur ANTARMUKA yang menerima antarmuka yang diminta.
Nilai kembali
DxgkCbQueryServices mengembalikan STATUS_SUCCESS jika berhasil. Jika tidak, ia mengembalikan salah satu kode kesalahan yang ditentukan dalam Ntstatus.h.
Keterangan
Antarmuka, dalam konteks ini, adalah sekumpulan fungsi yang diimplementasikan oleh driver port tampilan. Driver port tampilan membuat fungsi antarmuka tersedia untuk driver lain dengan menyediakan penunjuk fungsi sebagai respons terhadap DxgkCbQueryServices.
Mendapatkan antarmuka AGP
Untuk mendapatkan antarmuka Port Grafis Dipercepat (AGP), lakukan hal berikut:
Alokasikan struktur DXGK_AGP_INTERFACE .
Atur anggota Ukuran ke sizeof(DXGK_AGP_INTERFACE).
Atur Anggota versi . Konstanta versi ditentukan dalam Dispmprt.h (misalnya, DXGK_AGP_INTERFACE_VERSION_1).
Panggil DxgkCbQueryServices; atur ServicesType ke DxgkServicesAgp, dan atur Antarmuka ke alamat (transmisikan sebagai PINTERFACE) dari struktur DXGK_AGP_INTERFACE Anda.
Saat kembali dari DxgkCbQueryServices, struktur DXGK_AGP_INTERFACE Anda akan berisi pointer ke fungsi antarmuka AGP; misalnya, AgpAllocatePool.
Mendapatkan antarmuka Laporan Debug
Untuk mendapatkan antarmuka Laporan Debug, lakukan hal berikut:
Alokasikan struktur DXGK_DEBUG_REPORT_INTERFACE .
Atur anggota Ukuran ke sizeof(DXGK_DEBUG_REPORT_INTERFACE).
Atur Anggota versi . Konstanta versi ditentukan dalam Dispmprt.h (misalnya, DXGK_DEBUG_REPORT_INTERFACE_VERSION_1).
Panggil DxgkCbQueryServices; atur ServicesType ke DxgkServicesDebugReport, dan atur Antarmuka ke alamat (transmisikan sebagai PINTERFACE) dari struktur DXGK_DEBUG_REPORT_INTERFACE Anda.
Saat kembali dari DxgkCbQueryServices, struktur DXGK_DEBUG_REPORT_INTERFACE Anda akan berisi pointer ke fungsi antarmuka Laporan Debug; misalnya, DbgReportCreate.
Mendapatkan antarmuka Timed Operation
Untuk mendapatkan antarmuka Operasi Berwaktu, lakukan hal berikut:
Alokasikan struktur DXGK_TIMED_OPERATION_INTERFACE .
Atur anggota Ukuran ke sizeof(DXGK_TIMED_OPERATION_INTERFACE).
Atur Anggota versi . Konstanta versi ditentukan dalam Dispmprt.h (misalnya, DXGK_TIMED_OPERATION_INTERFACE_VERSION_1).
Panggil DxgkCbQueryServices; atur ServicesType ke DxgkServicesTimedOperation, dan atur Antarmuka ke alamat (transmisikan sebagai PINTERFACE) dari struktur DXGK_TIMED_OPERATION_INTERFACE Anda.
Saat kembali dari DxgkCbQueryServices, struktur DXGK_TIMED_OPERATION_INTERFACE Anda akan berisi pointer ke fungsi antarmuka Operasi Berwaktu; misalnya, TimedOperationStart.
Mendapatkan antarmuka Tabel Firmware SPB dan Sistem
Antarmuka Simple Peripheral Bus (SPB) dan System Firmware Table dapat diperoleh dengan mengikuti langkah-langkah di atas menggunakan ServicesType dan struktur yang sesuai.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows Vista |
Target Platform | Desktop |
Header | dispmprt.h (termasuk Dispmprt.h) |
IRQL | PASSIVE_LEVEL |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk