Fungsi WdfFdoQueryForInterface (wdffdo.h)
[Hanya berlaku untuk KMDF]
Metode WdfFdoQueryForInterface mendapatkan akses ke antarmuka pengandar lain yang diidentifikasi GUID.
Sintaks
NTSTATUS WdfFdoQueryForInterface(
[in] WDFDEVICE Fdo,
[in] LPCGUID InterfaceType,
[out] PINTERFACE Interface,
[in] USHORT Size,
[in] USHORT Version,
[in, optional] PVOID InterfaceSpecificData
);
Parameter
[in] Fdo
Handel ke objek perangkat kerangka kerja.
[in] InterfaceType
Penunjuk ke GUID yang mengidentifikasi antarmuka.
[out] Interface
Penunjuk ke struktur yang dialokasikan driver yang menerima antarmuka yang diminta. Struktur ini didefinisikan oleh driver yang mengekspor antarmuka yang diminta dan harus dimulai dengan struktur INTERFACE .
[in] Size
Ukuran, dalam byte, dari struktur yang dialokasikan driver yang mewakili antarmuka yang diminta.
[in] Version
Nomor versi antarmuka yang diminta. Format nilai ini ditentukan oleh driver yang mengekspor antarmuka yang diminta.
[in, optional] InterfaceSpecificData
Informasi khusus antarmuka tambahan. Parameter ini bersifat opsional dan dapat berupa NULL.
Nilai kembali
Jika operasi berhasil, metode mengembalikan STATUS_SUCCESS. Nilai pengembalian tambahan meliputi:
Menampilkan kode | Deskripsi |
---|---|
|
Objek perangkat tidak valid atau jika parameter Device, InterfaceType, atau Interface adalah NULL. |
|
Kerangka kerja tidak dapat mengalokasikan permintaan untuk dikirim ke driver lain. |
Metode ini mungkin juga mengembalikan nilai NTSTATUS lainnya.
Pemeriksaan bug sistem terjadi jika driver memasok handel objek yang tidak valid.
Keterangan
Driver Anda dapat memanggil WdfFdoQueryForInterface untuk mendapatkan akses ke antarmuka yang ditentukan driver yang dibuat oleh driver yang berada di tumpukan driver yang sama dengan tempat driver Anda berada. Untuk mengakses antarmuka yang ditentukan driver yang dibuat oleh driver yang berada di tumpukan driver yang berbeda, driver Anda harus memanggil WdfIoTargetQueryForInterface.
Driver berbasis kerangka kerja menentukan antarmuka dengan memanggil WdfDeviceAddQueryInterface.
Untuk informasi selengkapnya tentang WdfFdoQueryForInterface, lihat Menggunakan Antarmuka Driver-Defined.
Contoh
Contoh kode berikut berasal dari driver fungsi sampel Toaster . Contoh ini mendapatkan akses ke antarmuka yang ditentukan driver bus sampel pemangsa.
status = WdfFdoQueryForInterface(
Device,
&GUID_TOASTER_INTERFACE_STANDARD,
(PINTERFACE) &fdoData->BusInterface, // Object context space
sizeof(TOASTER_INTERFACE_STANDARD),
1,
NULL
);
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Universal |
Versi KMDF minimum | 1,0 |
Header | wdffdo.h (termasuk Wdf.h) |
Pustaka | Wdf01000.sys (lihat Penerapan Versi Pustaka Kerangka Kerja.) |
IRQL | PASSIVE_LEVEL |
Aturan kepatuhan DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |
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