IRemoteTargetCallbackRemoval::OnRemoteTargetQueryRemove 方法 (wudfddi.h)

[警告: UMDF 2 是最新版本的 UMDF,取代了 UMDF 1。 所有新的 UMDF 驱动程序都应使用 UMDF 2 编写。 未向 UMDF 1 添加新功能,并且较新版本的 Windows 10 上对 UMDF 1 的支持有限。 通用 Windows 驱动程序必须使用 UMDF 2。 有关详细信息,请参阅使用 UMDF 入门。]

基于 UMDF 的驱动程序的 OnRemoteTargetQueryRemove 事件回调函数确定是否可以停止和删除远程 I/O 目标的设备。

语法

BOOL OnRemoteTargetQueryRemove(
  [in] IWDFRemoteTarget *pWdfRemoteTarget
);

参数

[in] pWdfRemoteTarget

指向表示远程 I/O 目标的远程目标对象的 IWDFRemoteTarget 接口的指针。 驱动程序在调用 IWDFDevice2::CreateRemoteTarget 时获取此指针。

返回值

如果驱动程序确定可以停止和删除设备, 则 OnRemoteTargetQueryRemove 事件回调函数必须返回 TRUE。 否则,回调函数必须返回 FALSE

注解

如果驱动程序提供 OnRemoteTargetQueryRemove 事件回调函数,则回调函数应确定操作系统是否应允许删除设备。 如果驱动程序确定可以删除设备,则应执行以下操作:

  1. 执行停止对远程目标的 I/O 所需的任何特定于驱动程序的操作。
  2. 调用 IWDFRemoteTarget::CloseForQueryRemove
  3. 返回 TRUE 以指示可以进行删除。
如果驱动程序确定不应删除设备,则回调函数必须返回 FALSE。 通常,驱动程序应避免返回 FALSE,因为 FALSE 返回值可能会导致 Windows 重启。

如果驱动程序不提供此回调函数,框架将为驱动程序调用 IWDFRemoteTarget::CloseForQueryRemove 。 换句话说,除非驱动程序提供 OnRemoteTargetQueryRemove 事件回调函数,否则框架始终允许删除设备。

有关 OnRemoteTargetQueryRemove 事件回调函数的详细信息,请参阅 在 UMDF 中控制常规 I/O 目标的状态

要求

要求
结束支持 在 UMDF 2.0 及更高版本中不可用。
目标平台 桌面
最低 UMDF 版本 1.9
标头 wudfddi.h (包括 Wudfddi.h)

另请参阅

IRemoteTargetCallbackRemoval

IRemoteTargetCallbackRemoval::OnRemoteTargetRemoveCanceled

IRemoteTargetCallbackRemoval::OnRemoteTargetRemoveComplete