我有一个多形式的 Windows 移动应用程序,它使用 EMDK(2.6 版)访问 MC75 的条形码扫描仪。我使用 Singleton 访问条形码扫描仪。当应用程序启动时,我调用barcodereader.Actions.Enable()
,当应用程序退出时,我调用“barcodereader.Actions.Disable()”。基本上,我使用 EMDK 示例作为让扫描仪工作的指南。
在应用程序运行时,我将事件处理程序添加到表单激活事件的条形码阅读器“readNotify”,并在表单激活时删除事件处理程序。我已放入代码以检查这是否正确发生,并添加了一项检查以确保在添加新事件处理程序之前不存在现有事件处理程序。
该应用程序工作正常,但由于某种原因,条形码扫描仪突然中断,按下触发按钮时无法工作。这似乎总是发生在同一个地方(在三种形式的大约 20 次扫描之后)。没有发现错误并且扫描仪灯无法亮起。我有一定数量的扫描要做,并且扫描会在几秒钟前成功扫描的表单上停止。我可以在一个表单上进行 20 多次扫描,但似乎只有在扫描不同表单时才会遇到问题。
如果我重新启动应用程序,扫描仪将再次工作。datawedge 软件已安装但未使用。
我在这里研究期间看到了这个问题,但我的问题似乎不是断断续续的。
我在 Symbol 支持网站上看到一条说明,在表单之间移动时重复调用“.Actions.Enable”和“.Actions.Disable”是不可取的,我不这样做。
我不知道在应用程序中检查什么。有任何想法吗?
详细信息 - 使用 Windows Visual Studio 2008,设备运行 Windows Mobile 6.5 Professional,EMDK 版本 2.6,用 C# 编写的应用程序。