Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
[Hanya berlaku untuk KMDF]
Metode WdfFdoQueryForInterface mendapatkan akses ke antarmuka yang diidentifikasi GUID driver lain.
Sintaksis
NTSTATUS WdfFdoQueryForInterface(
[in] WDFDEVICE Fdo,
[in] LPCGUID InterfaceType,
[out] PINTERFACE Interface,
[in] USHORT Size,
[in] USHORT Version,
[in, optional] PVOID InterfaceSpecificData
);
Parameter-parameternya
[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 ANTARMUKA.
[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 NULL.
Mengembalikan nilai
Jika operasi berhasil, metode akan mengembalikan STATUS_SUCCESS. Nilai pengembalian tambahan meliputi:
Mengembalikan kode | Deskripsi |
---|---|
|
Objek perangkat tidak valid atau jika parameter Perangkat, InterfaceType, , atau InterfaceNULL. |
|
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 menyediakan handel objek yang tidak valid.
Komentar
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 Toaster contoh driver fungsi. Contoh ini mendapatkan akses ke antarmuka yang ditentukan driver bus sampel pemanggih.
status = WdfFdoQueryForInterface(
Device,
&GUID_TOASTER_INTERFACE_STANDARD,
(PINTERFACE) &fdoData->BusInterface, // Object context space
sizeof(TOASTER_INTERFACE_STANDARD),
1,
NULL
);
Persyaratan
Persyaratan | Nilai |
---|---|
Platform Target | Universal |
versi KMDF Minimum | 1.0 |
Tajuk | wdffdo.h (termasuk Wdf.h) |
Perpustakaan | Wdf01000.sys (lihat Penerapan Versi Pustaka Kerangka Kerja.) |
IRQL | PASSIVE_LEVEL |
aturan kepatuhan DDI | DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf) |