- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
一点历史:我们有一个应用程序,最初是在很多年前编写的(1998 年是 PVCS 的第一个日期,但该应用程序比它早 5 年,因为它最初是一个 DOS 程序)。此应用程序通过串行与硬件进行通信。当我们使用 Windows XP 时,我们开始收到应用程序在运行一小段时间后死机的报告。似乎串行通讯刚刚“死亡”,应用程序处于卡住状态。从这种情况中恢复的唯一方法是重新启动应用程序。
我能找到的关于这个问题的唯一信息显然是 Windows 消息系统会错过接收到的信息,缓冲区会填满,系统会卡住。这段信息被留在了一个旧的word文档中,但没有证据支持这一点。它还提到这仅在高波特率 (115200+) 下普遍存在。
解决方案是为客户提供USB->串行转换器以及硬件。
今天:我们正在开发一个新版本的硬件,它将在网络和串行端口上运行。因此,为了让我能够处理网络代码,减去我们使用的实际硬件 VSCOM NetCom113设备。它还在用户(即:我的)机器上安装了一个虚拟通信端口。
现在我已经将网络代码与应用程序集成,看起来 NetCom 设备表现出与物理 commport 相同的行为。这是不可取的,因为我需要应用程序运行时间超过 ~30 秒。
谷歌发现我们遇到的零问题。
我在想:
最佳答案
您使用的是 DOS 风格的串行代码,还是 Win32 CreateFile 方法?
如果是前者,请非常怀疑:如果可能的话,我会转换为后者。
如果是后者,你知道它卡在什么样的系统调用上吗?您是否处于阻塞读取调用中?还是重叠的 I/O 调用?或等待事件? (我不确定我是否有足够的经验来提供帮助,但这些都是我想到的问题)
您还可以检查队列大小,您可以使用 SetupComm 进行设置功能。
我不买“Windows 消息系统”的东西——这听起来很可疑;您可以编写从不使用 Windows 消息的优秀 Win32 串行 i/o 代码。
编辑:您的重叠 I/O 是否使用事件?我似乎记得一些关于自动重置事件偶尔会错过触发的事情......非常仔细地检查重叠的 I/O 调用,看看你是否正确处理了可能的结果。也许有一种方法可以通过自动取消重叠的 i/o 并重新启动另一个读取来使您的代码更加健壮。 (我认为问题出在读取的一半,而不是写入的一半?)
编辑 2:一个建议:假设 win32 端丢失了一个字节或数据包,并且您的设备处于死锁状态,因为它们都希望彼此响应某些东西,您能否调整串行 I/O 的另一端以定期发送某种类型带有递增计数器的“ping”数据包? (并在 PC 端记录 ping 数据包;这样您就可以查看是否遗漏了任何数据)
关于networking - 串行通讯在 WinXP 中死机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/565519/
我正在寻找 WinXP 上的 API 以在已安装的 IME 之间切换。 场景是,能够插入语言键盘(比如西类牙语)并通过单击 UI 按钮(比如名为西类牙语的按钮)更改 IME 例如我插入西类牙语键盘并单
1 在C:\WINDOWS\system32\drivers\etc\hosts 添加如下代码: 127.0.0.1 localhost 127.0.0.1 x.test.com x.test1.c
在希伯来语/希伯来语本地化安装中输入密码的可接受方式是什么?密码输入对话框是否应该与左侧追加的新字符右对齐?像这样: |----------------------| | |
我们的应用程序是内存密集型的,需要读取大量磁盘文件。总负载可以超过 3 GB。 有一个自定义的内存管理器,它使用内存映射文件来实现读取如此庞大的数据。仅当需要时,文件才会映射到进程内存空间,这样进程内
我有一种文件格式需要能够在资源管理器缩略图中显示。由于目标系统是 windows XP,因此 Vista PreviewHandler API 将不适用。我将使用 C++。 我该怎么做? 最佳答案 您
引用自 SVN 手册: In Subversion 1.6, a new caret (^) notation was introduced as a shorthand for “the URL o
一点历史:我们有一个应用程序,最初是在很多年前编写的(1998 年是 PVCS 的第一个日期,但该应用程序比它早 5 年,因为它最初是一个 DOS 程序)。此应用程序通过串行与硬件进行通信。当我们使用
我最近在开发一个网站,很大一部分依赖于JQuery的使用,目标浏览器是IE8,但是我一直在Win7机器上开发,现在才意识到之间的兼容性存在差异WinXP 和 Win7 上的 IE8。 所以很多东西都会
我向 super 用户提出了这个问题,并获得了风滚草徽章(10 天内有 13 次浏览),所以我认为这里可能是正确的地方。 我的 Windows 机器上安装了多个版本的 Python。我希望能够在默认使
我想在 Windows XP 的 python 中将键盘语言从英语更改为阿拉伯语,比如我有两行编辑,第一行用英语写,当移动到第二行时,编辑语言将自动为阿拉伯语?? 最佳答案 您正在描述一个不平凡的任务
你好,我正在编写一个将在 Windows XP 机器上运行的批处理脚本。此脚本需要能够可靠地验证作为命令行参数传递的目录是否确实存在。 假设我的脚本名为script.bat,它需要支持以下作为合法的命
复制代码 代码如下: If (Lcase(Right(Wscript.FullName,11)) = "wscript.exe") Then CreateObject(&qu
我安装了 Windows XP 和 Visual Studio 2010。 旨在使用 FxCop 检查解决方案是否符合 Microsoft 代码指南。 现在发现 FxCop 是“Microsoft W
我还使用第三方组件(在 D7、WinXP 上开发)开发了一个应用程序。当我在 XP 上部署此应用程序时,一切正常。当我在 Vista 上运行它时,应用程序停止正常工作: 工具栏上的工具按钮大小不均匀,
我在这里使用 js-ctypes 在 winxp 上使用 winapi 来获取任务栏上按钮索引 1 处的按钮。但是,这里的这一行使我的代码崩溃: var rez = SendMessage(hTool
这个问题已经有答案了: VB6 Program Crashing: Part 2. Advice on fixing Access Violation (0xC00000005) (1 个回答) 已关
按照此 py 包官方页面上的说明进行操作: https://pypi.python.org/pypi/setuptools#windows-7-or-graphical-install “对于 Win
我需要移动控制台光标位置的字符/转义序列。知道左/右/上/下光标控件会很好,但如果不可能的话,一个家(转到控制台第一行的第一个字符)。提前致谢。 最佳答案 最好的办法是使用控制台 API。这是 ref
编辑:Firefox 2 Windows XP 重现问题的步骤: Firefox 2 并访问:http://resopollution.com/rentfox/html/property_setup.
http://msdn.microsoft.com/en-us/library/windows/desktop/ms648045%28v=vs.85%29.aspx 告诉我: If the hinst
我是一名优秀的程序员,十分优秀!