WdfDeviceAddRemovalRelationsPhysicalDevice 函式 (wdfdevice.h)
[僅適用於 KMDF]
WdfDeviceAddRemovalRelationsPhysicalDevice 方法表示當移除另一個指定的裝置時,必須移除指定的裝置。
語法
NTSTATUS WdfDeviceAddRemovalRelationsPhysicalDevice(
[in] WDFDEVICE Device,
[in] PDEVICE_OBJECT PhysicalDevice
);
參數
[in] Device
架構裝置物件的句柄。
[in] PhysicalDevice
呼叫端提供的DEVICE_OBJECT結構的指標,代表 PDO ) 實體裝置物件 (。
傳回值
如果作業成功, WdfDeviceAddRemovalRelationsPhysicalDevice 會傳回STATUS_SUCCESS。 其他傳回值包括:
傳回碼 | Description |
---|---|
|
PhysicalDevice 為 NULL。 |
|
記憶體配置失敗。 |
方法可能會傳回其他 NTSTATUS值。
如果驅動程式提供無效的物件句柄,就會發生錯誤檢查。
備註
PhysicalDevice 參數指向裝置的 PDO,當移除裝置的驅動程式時,必須移除其驅動程式的 PDO。 一般而言,這兩個裝置都是由呼叫驅動程式所控制。 請勿報告 Device 中指定的裝置物件的子裝置,因為當 隨插即用 管理員移除父裝置時,也會移除裝置的子系。
您的驅動程式可以多次呼叫 WdfDeviceAddRemovalRelationsPhysicalDevice ,將多個裝置新增至移除 裝置 時必須移除的裝置清單。 未定義移除指定裝置的順序。
範例
下列程式代碼範例會將 pPdo 識別的裝置新增至移除裝置時必須移除的 裝置 清單。
status = WdfDeviceAddRemovalRelationsPhysicalDevice(
device,
pPdo
);
規格需求
需求 | 值 |
---|---|
目標平台 | Universal |
最小 KMDF 版本 | 1.0 |
標頭 | wdfdevice.h (包含 Wdf.h) |
程式庫 | Wdf01000.sys (請參閱 Framework Library Versioning.) |
IRQL | <= DISPATCH_LEVEL |
DDI 合規性規則 | DriverCreate (kmdf) 、 KmdfIrql (kmdf) 、 KmdfIrql2 (kmdf) 、 KmdfIrqlExplicit (kmdf) |