Bagikan melalui


fungsi WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE (wdfiotarget.h)

[Berlaku untuk KMDF saja]

Fungsi WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE menginisialisasi struktur WDF_IO_TARGET_OPEN_PARAMS driver sehingga driver dapat membuka target I/O jarak jauh dengan menentukan objek perangkat Windows Driver Model (WDM).

Sintaks

void WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE(
  [out] PWDF_IO_TARGET_OPEN_PARAMS Params,
  [in]  PDEVICE_OBJECT             DeviceObject
);

Parameter

[out] Params

Penunjuk ke struktur WDF_IO_TARGET_OPEN_PARAMS yang dialokasikan driver yang diinisialisasi fungsi.

[in] DeviceObject

Penunjuk ke struktur DEVICE_OBJECT , yang digunakan sebagai nilai untuk anggota DeviceObject dari struktur WDF_IO_TARGET_OPEN_PARAMS .

Nilai kembali

Tidak ada

Keterangan

Struktur WDF_IO_TARGET_OPEN_PARAMS digunakan sebagai input ke metode WdfIoTargetOpen .

Fungsi WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE menginisialisasi anggota Ukuran, Jenis, dan TargetDeviceObject dari struktur WDF_IO_TARGET_OPEN_PARAMS yang ditentukan.

Biasanya, driver menetapkan anggota TargetFileObject dari struktur WDF_IO_TARGET_OPEN_PARAMS setelah driver memanggil WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE.

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

Contoh

Contoh kode berikut membuat objek target I/O dan membuka target dengan menentukan struktur DEVICE_OBJECT. Driver sampel mendapatkan struktur DEVICE_OBJECT dengan memanggil NdisMGetDeviceProperty (tidak ditampilkan).

WDF_IO_TARGET_OPEN_PARAMS  openParams;
NTSTATUS  ntStatus;

ntStatus = WdfIoTargetCreate(
                             Adapter->WdfDevice,
                             WDF_NO_OBJECT_ATTRIBUTES,
                             &Adapter->IoTarget
                             );
if (!NT_SUCCESS(ntStatus)) {
    DEBUGP(MP_ERROR, ("WdfIoTargetCreate failed 0x%x\n", ntStatus));
    break;
}

WDF_IO_TARGET_OPEN_PARAMS_INIT_EXISTING_DEVICE(
                                               &openParams,
                                               Adapter->NextDeviceObject
                                               );

ntStatus = WdfIoTargetOpen(Adapter->IoTarget,
                           &openParams);
if (!NT_SUCCESS(ntStatus)) {
    DEBUGP(MP_ERROR, ("WdfIoTargetOpen failed 0x%x\n", ntStatus));
    break;
}

Persyaratan

Persyaratan Nilai
Target Platform Universal
Versi KMDF minimum 1,0
Header wdfiotarget.h (termasuk Wdf.h)
IRQL Tingkat apa pun

Lihat juga

WDF_IO_TARGET_OPEN_PARAMS

WDF_IO_TARGET_OPEN_PARAMS_INIT_CREATE_BY_NAME

WDF_IO_TARGET_OPEN_PARAMS_INIT_OPEN_BY_NAME

WdfIoTargetBuka