Bagikan melalui


Fungsi WdfDeviceAddRemovalRelationsPhysicalDevice (wdfdevice.h)

[Berlaku untuk KMDF saja]

Metode WdfDeviceAddRemovalRelationsPhysicalDevice menunjukkan bahwa perangkat tertentu harus dihapus ketika perangkat lain yang ditentukan dihapus.

Sintaks

NTSTATUS WdfDeviceAddRemovalRelationsPhysicalDevice(
  [in] WDFDEVICE      Device,
  [in] PDEVICE_OBJECT PhysicalDevice
);

Parameter

[in] Device

Handel ke objek perangkat kerangka kerja.

[in] PhysicalDevice

Penunjuk ke struktur DEVICE_OBJECT yang disediakan penelepon yang mewakili objek perangkat fisik (PDO).

Nilai kembali

Jika operasi berhasil, WdfDeviceAddRemovalRelationsPhysicalDevice mengembalikan STATUS_SUCCESS. Nilai pengembalian tambahan meliputi:

Menampilkan kode Deskripsi
STATUS_INVALID_PARAMETER
PhysicalDevice adalah NULL.
STATUS_INSUFFICIENT_RESOURCES
Alokasi memori gagal.
 

Metode ini mungkin mengembalikan nilai NTSTATUS lainnya.

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

Keterangan

Parameter PhysicalDevice menunjuk ke PDO perangkat yang drivernya harus dihapus saat driver untuk Perangkat dihapus. Biasanya, kedua perangkat dikendalikan oleh driver panggilan. Jangan melaporkan perangkat anak dari objek perangkat yang ditentukan di Perangkat karena ketika manajer Plug and Play menghapus perangkat induk, perangkat juga akan menghapus turunan perangkat.

Driver Anda dapat memanggil WdfDeviceAddRemovalRelationsPhysicalDevice beberapa kali untuk menambahkan beberapa perangkat ke daftar perangkat yang harus dihapus saat Perangkat dihapus. Urutan penghapusan perangkat yang ditentukan tidak ditentukan.

Contoh

Contoh kode berikut menambahkan perangkat yang diidentifikasi pPdo ke daftar perangkat yang harus dihapus saat perangkat yang ditentukan perangkat dihapus.

status = WdfDeviceAddRemovalRelationsPhysicalDevice(
                                                    device,
                                                    pPdo
                                                    );

Persyaratan

Persyaratan Nilai
Target Platform Universal
Versi KMDF minimum 1,0
Header wdfdevice.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

WdfDeviceClearRemovalRelationsDevices

WdfDeviceRemoveRemovalRelationsPhysicalDevice