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
STATUS_INVALID_PARAMETER
PhysicalDeviceNULL
STATUS_INSUFFICIENT_RESOURCES
記憶體配置失敗。
 

方法可能會傳回其他 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)

另請參閱

WdfDeviceClearRemovalRelationsDevices

WdfDeviceRemoveRemovalRelationsPhysicalDevice