IWDFRemoteTarget::Reopen 方法 (wudfddi.h)
[警告: UMDF 2 是最新版本的 UMDF,取代了 UMDF 1。 所有新的 UMDF 驱动程序都应使用 UMDF 2 编写。 未向 UMDF 1 添加新功能,并且较新版本的 Windows 10 上对 UMDF 1 的支持有限。 通用 Windows 驱动程序必须使用 UMDF 2。 有关详细信息,请参阅使用 UMDF 入门。]
Reopen 方法在远程 I/O 目标暂时关闭后重新打开它。
语法
HRESULT Reopen();
返回值
如果操作成功,重新打开将返回S_OK。 否则,该方法可能会返回以下值:
返回代码 | 说明 |
---|---|
|
框架分配内存的尝试失败。 |
此方法可能会返回 Winerror.h 包含的其他值之一。
如果框架无法打开该文件,则框架 的验证程序 会报告错误。
注解
通常,驱动程序从IRemoteTargetCallbackRemoval::OnRemoteTargetRemoveCanceled 回调函数中调用重新打开,但在 OnRemoteTargetRemoveCanceled 返回后,可以改为调用重新打开。
重新打开使用驱动程序之前指定的文件或接口名称 IWDFRemoteTarget::OpenFileByName 或 IWDFRemoteTarget::OpenRemoteInterface。 如果要更改驱动程序正在使用的文件或接口,驱动程序可以调用 IWDFRemoteTarget::Close,然后它可以调用 OpenFileByName 或 OpenRemoteInterface ,而不是 重新打开。
有关 重新打开 以及如何在基于 UMDF 的驱动程序中使用远程 I/O 目标的详细信息,请参阅 在 UMDF 中控制常规 I/O 目标的状态。
示例
下面的代码示例演示调用重新打开的 IRemoteTargetCallbackRemoval::OnRemoteTargetRemoveCanceled 回调函数。
VOID
STDMETHODCALLTYPE
CMyRemoteTarget::OnRemoteTargetRemoveCanceled(
__in IWDFRemoteTarget* FxTarget
)
{
if (S_OK == (FxTarget->Reopen()))
{
//
// Resume sending I/O requests to the remote target.
//
...
}
else
{
FxTarget->Close();
}
}
要求
要求 | 值 |
---|---|
结束支持 | 在 UMDF 2.0 及更高版本中不可用。 |
目标平台 | 桌面 |
最低 UMDF 版本 | 1.9 |
标头 | wudfddi.h (包括 Wudfddi.h) |
DLL | WUDFx.dll |