c – 如果未使用CloseHandle正确关闭,则重新打开串口会失败

我正在使用Windows上的USB设备,它被视为虚拟串行端口.我可以使用CreateFile和ReadFile函数与设备通信,但在某些情况下,我的应用程序不会调用CloseHandle(当我的应用程序在开发中崩溃时).之后,对CreateFile的所有调用都失败(ERROR_ACCESS_DENIED),唯一的解决方案是再次登录到我的计算机.有没有办法以编程方式强制关闭打开的句柄(或重新打开)?

解决方法:

这当然不正常. Windows会自动关闭进程终止后保持打开的所有句柄.这必定是USB设备驱动程序中的一个缺陷,尽管很难看出它是如何搞砸的.然而,模拟串行端口的那些是众所周知的糟糕的.好吧,你无能为力,但希望制造商提供更新驱动程序.或者来自其他制造商的设备.

相关文章

Windows2012R2备用域控搭建 前置操作 域控主域控的主dns:自...
主域控角色迁移和夺取(转载) 转载自:http://yupeizhi.blo...
Windows2012R2 NTP时间同步 Windows2012R2里没有了internet时...
Windows注册表操作基础代码 Windows下对注册表进行操作使用的...
黑客常用WinAPI函数整理之前的博客写了很多关于Windows编程的...
一个简单的Windows Socket可复用框架说起网络编程,无非是建...