【发布时间】:2014-01-04 21:08:01
【问题描述】:
我正在使用 Qt 5.1,当我的应用程序(在 v4.8.4 中使用 QextSerialPort 工作)无法通信时,我尝试了 ...\5.1.1\Src\qtserialport\examples\serialport\terminal 中的示例。这也失败了。
我有一个模拟 COM 端口的简单 USB 加密狗。如果我使用 RealTerm,我可以向它发送 AT 命令并返回 OK。
但是Qt自带的终端例子并不能与之通信。我查看了一个 API 窥探程序,但我得到了一个不成功的返回,错误为 WaitCommEvent 和 WriteFile 的“997:Overlapped I/O operation is in progress”。
我在 Windows 7 上运行它,并将 exe 和 DLL 复制到 Windows 8 机器上,但它也无法通信(尽管我没有在那里进行 API 侦听)。
有人有什么想法可以尝试吗?未经修改的示例应用程序怎么会失败?我一头雾水。
【问题讨论】:
-
在 5.1.1 的 Linux 上是否也会失败?你试过 git 或 5.2 的 csyncreader/writer 吗?
-
另外,您能否发布一个不适合您的简单应用程序?或者,您可以运行这个应该针对 5.1.1 构建的示例:qt.gitorious.org/qt/qtserialport/source/… 然后,请粘贴输出。
-
我也想在 linux 上尝试一下,但我还没有机会。当我今晚回到家运行 Linux 时,我会这样做。
-
好的,当然。同时,您可以尝试 csyncwriter 示例。让我知道这是否有效。如果没有,请粘贴控制台的输出。您需要从 Windows 上的标准输入提供该命令行示例,并将其写入端口。
-
我以为最简单的例子就是我第一次提到的那个,即qt.gitorious.org/qt/qtserialport/source/…
标签: c++ windows qt serial-port qtserialport