环境:WinXP; PowerBuilder的11.5(虽然可能不相关的,因为这部分几乎完全是WinAPI的呼叫)COM端口退出工作
我的应用程序打开使用重叠的方法调用写一个COM端口。当应用程序打开时,端口被打开。应用程序始终保持开放状态。
偶尔,即使应用程序仍在发送数据,附加设备也会停止接收数据。该应用程序不会收到错误消息。停止并重新启动应用程序不会解决它。重新启动计算机并不能解决问题。但是,通过超级终端连接修复它。
此特定设备打印条形码标签。该应用程序将打印得很好,然后突然,它不会打印。关闭应用程序;打开并连接超级终端;断开并关闭超级终端;打开应用程序。它再次正常工作......一段时间。 (我与其他设备也有类似的问题,也通过COM端口进行通信,所以我知道它不是设备本身。)
我可以在网上找到的最接近的类似问题是http://www.eggheadcafe.com/microsoft/Windows-XP-Hardware/30829577/com1-not-behaving.aspx,它提到IRQ冲突和没有解决方案。我只能猜测我的问题是相似的。
有谁知道超级终端可能会采取什么措施来解决问题吗?
强劲的指标是你得到的握手错误。当设备需要RTS + CTS或Xon/Xoff时,使用无。 –
这当然是一种可能性。但是有些时候会有这样的工作吗?该应用程序工作了一段时间,然后突然停止。另外,如何在使用CreateFile方法时指定握手方法? http://msdn.microsoft.com/en-us/library/windows/desktop/aa363858(v=vs.85).aspx –
您可以使用SetCommState() –