Fungsi WdfIoTargetWdmGetTargetDeviceObject (wdfiotarget.h)

[Berlaku untuk KMDF saja]

Metode WdfIoTargetWdmGetTargetDeviceObject mengembalikan penunjuk ke objek perangkat Windows Driver Model (WDM) yang terkait dengan target I/O lokal atau jarak jauh tertentu.

Sintaks

PDEVICE_OBJECT WdfIoTargetWdmGetTargetDeviceObject(
  [in] WDFIOTARGET IoTarget
);

Parameter

[in] IoTarget

Handel ke objek target I/O lokal atau jarak jauh yang diperoleh dari panggilan sebelumnya ke WdfDeviceGetIoTarget atau WdfIoTargetCreate atau dari metode yang disediakan target I/O khusus.

Nilai kembali

WdfIoTargetWdmGetTargetDeviceObject mengembalikan penunjuk ke struktur DEVICE_OBJECT WDM.

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

Keterangan

Sebagian besar driver berbasis kerangka kerja tidak perlu mengakses objek perangkat WDM target I/O.

Penunjuk yang dikembalikan metode WdfIoTargetWdmGetTargetDeviceObject valid hingga driver memanggil WdfIoTargetClose atau WdfIoTargetCloseForQueryRemove, atau sampai objek target I/O jarak jauh dihapus. Jika driver menyediakan fungsi EvtCleanupCallback untuk objek target I/O jarak jauh, dan jika objek dihapus sebelum target I/O jarak jauh ditutup, penunjuk valid hingga fungsi EvtCleanupCallback kembali.

Jika driver mencoba mengakses objek perangkat WDM setelah dihapus, driver dapat menyebabkan sistem mengalami crash. Sampel toastmon menunjukkan bagaimana driver dapat menyediakan fungsi panggilan balik EvtIoTargetQueryRemove sehingga diberi tahu jika target I/O dihapus.

Untuk informasi selengkapnya tentang WdfIoTargetWdmGetTargetDeviceObject, lihat Mendapatkan Informasi Tentang Target I/O Umum.

Untuk informasi selengkapnya tentang target I/O, lihat Menggunakan Target I/O.

Contoh

Contoh kode berikut memeriksa struktur DEVICE_OBJECT WDM target I/O untuk memverifikasi bahwa target mendukung operasi I/O langsung.

if (!((WdfIoTargetWdmGetTargetDeviceObject(Adapter->IoTarget))->Flags
 & DO_DIRECT_IO)) {
    ASSERTMSG("Target device doesn't support direct I/O\n", FALSE);
    return STATUS_INVALID_DEVICE_REQUEST;
}

Persyaratan

Persyaratan Nilai
Target Platform Universal
Versi KMDF minimum 1,0
Header wdfiotarget.h (termasuk Wdf.h)
Pustaka Wdf01000.sys (lihat Penerapan Versi Pustaka Kerangka Kerja.)
IRQL <=DISPATCH_LEVEL
Aturan kepatuhan DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Lihat juga

DEVICE_OBJECT

WdfDeviceGetIoTarget

WdfIoTargetCreate

WdfIoTargetWdmGetTargetFileHandle

WdfIoTargetWdmGetTargetFileObject