Bagikan melalui


Fungsi WdfIoQueueRetrieveFoundRequest (wdfio.h)

[Berlaku untuk KMDF dan UMDF]

Metode WdfIoQueueRetrieveFoundRequest mengirimkan permintaan tertentu ke driver, sehingga driver dapat memproses permintaan.

Sintaks

NTSTATUS WdfIoQueueRetrieveFoundRequest(
  [in]  WDFQUEUE   Queue,
  [in]  WDFREQUEST FoundRequest,
  [out] WDFREQUEST *OutRequest
);

Parameter

[in] Queue

Handel ke objek antrean kerangka kerja.

[in] FoundRequest

Handel ke objek permintaan kerangka kerja yang diperoleh dengan memanggil WdfIoQueueFindRequest.

[out] OutRequest

Penunjuk ke lokasi yang menerima handel ke objek permintaan kerangka kerja. Driver harus menggunakan handel ini saat memproses permintaan.

Nilai kembali

WdfIoQueueRetrieveFoundRequest mengembalikan STATUS_SUCCESS jika operasi berhasil. Jika tidak, metode ini mungkin mengembalikan salah satu nilai berikut:

Menampilkan kode Deskripsi
STATUS_INVALID_PARAMETER
Driver menyediakan handel yang tidak valid.
STATUS_NOT_FOUND
Permintaan yang diidentifikasi oleh parameter FoundRequest tidak dapat ditemukan dalam antrean I/O.
STATUS_NO_MORE_ENTRIES
Kerangka kerja mencapai akhir antrean I/O tanpa menemukan permintaan yang cocok dengan kriteria pencarian.
 

Metode ini juga dapat mengembalikan nilai NTSTATUS lainnya.

Pemeriksaan bug terjadi jika driver menyediakan handel objek yang tidak valid.

Keterangan

Setelah memanggil WdfIoQueueRetrieveFoundRequest untuk mendapatkan permintaan I/O, driver memiliki permintaan dan harus memproses permintaan I/O dengan cara tertentu.

Sebelum memanggil WdfIoQueueRetrieveFoundRequest, driver harus memanggil WdfIoQueueFindRequest, yang mengambil handel yang dapat digunakan driver sebagai parameter FoundRequest ke WdfIoQueueRetrieveFoundRequest.

Jika driver Anda dibangun dengan KMDF versi 1.11 atau yang lebih baru, driver dapat memanggil WdfIoQueueRetrieveFoundRequest tanpa terlebih dahulu memanggil WdfIoQueueFindRequest. Dalam hal ini, driver harus memastikan bahwa objek permintaan masih valid dan dalam antrean.

Jika panggilan ke WdfIoQueueRetrieveFoundRequest mengembalikan STATUS_NOT_FOUND, permintaan yang sebelumnya ada dalam antrean telah dihapus. Permintaan mungkin telah dibatalkan.

Untuk informasi selengkapnya tentang metode WdfIoQueueRetrieveFoundRequest , lihat Mengelola Antrean I/O.

Contoh

Untuk contoh kode yang menggunakan WdfIoQueueRetrieveFoundRequest, lihat WdfIoQueueFindRequest.

Persyaratan

Persyaratan Nilai
Target Platform Universal
Versi KMDF minimum 1,0
Versi UMDF minimum 2.0
Header wdfio.h (termasuk Wdf.h)
Pustaka Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL <= DISPATCH_LEVEL
Aturan kepatuhan DDI DoubleCompletion(kmdf), DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), wdfioqueuefindrequestfailed, WdfIoQueueFindRequestFailed(kmdf), wdfioqueueretrievefoundrequest, WdfIoQueueRetrieveFoundRequest(kmdf)

Lihat juga

WdfIoQueueFindRequest

WdfIoQueueRetrieveNextRequest

WdfIoQueueRetrieveRequestByFileObject