IWDFRemoteTarget::CloseForQueryRemove 方法 (wudfddi.h)
[警告: UMDF 2 是最新版本的 UMDF,取代了 UMDF 1。 所有新的 UMDF 驱动程序都应使用 UMDF 2 编写。 未向 UMDF 1 添加新功能,并且较新版本的 Windows 10 上对 UMDF 1 的支持有限。 通用 Windows 驱动程序必须使用 UMDF 2。 有关详细信息,请参阅使用 UMDF 入门。]
CloseForQueryRemove 方法关闭远程 I/O 目标,因为操作系统可能允许删除设备。
语法
HRESULT CloseForQueryRemove();
返回值
CloseForQueryRemove 方法始终返回S_OK。
注解
如果驱动程序提供 IRemoteTargetCallbackRemoval::OnRemoteTargetQueryRemove 回调函数,则回调函数必须调用 CloseForQueryRemove ,如果它返回 TRUE 以指示可以删除设备。
CloseForQueryRemove 方法完成或取消驱动程序已发送到 I/O 目标的所有 I/O 请求。
驱动程序调用 CloseForQueryRemove 后,在调用 IWDFRemoteTarget::Reopen 之前,驱动程序无法向 I/O 目标发送 I/O 请求。
有关 CloseForQueryRemove 方法的详细信息,请参阅 在 UMDF 中控制常规 I/O 目标的状态。
示例
下面的代码示例演示调用 CloseForQueryRemove 的 IRemoteTargetCallbackRemoval::OnRemoteTargetQueryRemove 回调函数。
BOOL
STDMETHODCALLTYPE
CMyRemoteTarget::OnRemoteTargetQueryRemove(
__in IWDFRemoteTarget *FxTarget
)
{
//
// Here, do any driver-specific actions that your driver requires
// to stop sending I/O requests to the I/O target.
//
...
//
// Close the target.
//
FxTarget->CloseForQueryRemove();
//
// Return TRUE if you want to allow removal of the device.
//
return TRUE;
}
要求
要求 | 值 |
---|---|
结束支持 | 在 UMDF 2.0 及更高版本中不可用。 |
目标平台 | 桌面 |
最低 UMDF 版本 | 1.9 |
标头 | wudfddi.h (包括 Wudfddi.h) |
DLL | WUDFx.dll |