Bagikan melalui


Fungsi WdfRequestChangeTarget (wdfrequest.h)

[Berlaku untuk KMDF dan UMDF]

Metode WdfRequestChangeTarget memverifikasi bahwa permintaan I/O tertentu dapat dikirim ke target I/O tertentu.

Sintaks

NTSTATUS WdfRequestChangeTarget(
  [in] WDFREQUEST  Request,
  [in] WDFIOTARGET IoTarget
);

Parameter

[in] Request

Handel ke objek permintaan kerangka kerja.

[in] IoTarget

Handel ke objek target I/O kerangka kerja.

Nilai kembali

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

Menampilkan kode Deskripsi
STATUS_INVALID_PARAMETER
Parameter input tidak valid.
STATUS_INSUFFICIENT_RESOURCES
Sumber daya sistem tidak cukup untuk menyelesaikan operasi.
STATUS_REQUEST_NOT_ACCEPTED
Array permintaan lokasi tumpukan I/O tidak cukup besar untuk memungkinkan driver mengirim permintaan ke target I/O.
 

Metode ini juga mungkin mengembalikan nilai NTSTATUS lainnya.

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

Keterangan

Driver Anda harus memanggil metode WdfRequestChangeTarget sebelum memanggil WdfRequestSend, jika driver mengirim satu permintaan I/O ke beberapa target I/O. WdfRequestChangeTarget memverifikasi bahwa permintaan dapat dikirim ke target I/O yang ditentukan.

Sebagian besar driver mengirim setiap permintaan hanya ke satu perangkat dan dengan demikian hanya ke satu target I/O. Driver menerima permintaan atau membuat permintaan baru dengan memanggil WdfRequestCreate.

Jika driver mengirim permintaan ke satu perangkat, driver memanggil WdfDeviceGetIoTarget untuk menentukan target I/O perangkat dan kemudian memanggil WdfRequestSend untuk mengirim permintaan ke target.

Jika driver mengirim permintaan ke beberapa perangkat, driver memanggil WdfDeviceGetIoTarget untuk setiap perangkat untuk menentukan target I/O perangkat. Sebelum memanggil WdfRequestSend, driver harus memanggil WdfRequestChangeTarget untuk memastikan bahwa setiap target I/O dapat diakses.

Untuk informasi selengkapnya tentang WdfRequestChangeTarget, lihat Meneruskan Permintaan I/O.

Contoh

Contoh kode berikut memverifikasi bahwa permintaan I/O dapat dikirim ke target I/O lokal perangkat tertentu.

NTSTATUS  status;

status = WdfRequestChangeTarget(
                                request,
                                WdfDeviceGetIoTarget(Device)
                                );

Persyaratan

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

Lihat juga

WdfDeviceGetIoTarget

WdfRequestCreate

WdfRequestSend