我是 CE 环境的新手,我正在为使用 Windows CE 5.0 (Motorola mc3000) 的带有条形码扫描的移动计算机创建一个应用程序。
我正在使用 VS 2008,并且正在使用 C# 进行编程。
我做了一个小演示项目,它在设备上成功运行。我的应用程序有一个扫描任务,所以它需要使用条形码阅读器:访问扫描硬件,使其运行,读取返回的结果并将其显示到文本框中!
问题是我不知道如何将扫描部分集成到我的应用程序中。
对此有什么帮助吗?
我是 CE 环境的新手,我正在为使用 Windows CE 5.0 (Motorola mc3000) 的带有条形码扫描的移动计算机创建一个应用程序。
我正在使用 VS 2008,并且正在使用 C# 进行编程。
我做了一个小演示项目,它在设备上成功运行。我的应用程序有一个扫描任务,所以它需要使用条形码阅读器:访问扫描硬件,使其运行,读取返回的结果并将其显示到文本框中!
问题是我不知道如何将扫描部分集成到我的应用程序中。
对此有什么帮助吗?
好吧,第一步是查看摩托罗拉 MC3000 的文档。我不知道 MC3000 是否有一个,但我知道在用于 .Net 的摩托罗拉 EMDK 中,它们提供了相当多的示例 C# VS2008 项目,其中一些用于条形码读取。
Kobunite 已向您发布了第一步。因此,请访问摩托罗拉 EMDK 的下载页面并观看示例。之后,您必须在项目中引用 Symbol.dll 和 Symbol.Barcode.dll(本地副本 = true)。然后您可以开始使用扫描事件的事件处理程序编写您的“条形码类”。当通过硬件触发器扫描条码时,该事件将抛出一个然后您可以将条码字符串放在焦点文本框中或用它做其他事情(例如在数据网格中过滤)。希望这可以帮助。
只需简单地扫描条形码,就有一个更简单的解决方案。
默认情况下,条形码扫描仪也应该输出到键盘缓存中。
要对其进行测试,只需打开文本编辑器并扫描条形码。如果出现条形码,那么你很好。您可以简单地使用普通文本框并确保焦点在它上面。
然而,问题是你需要一个终结者。最简单的解决方案是将回车符号附加到任何扫描的值。大多数手持设备都有一个实用程序,您可以在其中附加字符以进行扫描。附加 '\r'(不带引号)适用于大多数设备。
这意味着您不必对代码做任何额外的事情。只需确保文本框支持键盘输入并在按下输入时开始处理。
摩托罗拉使用名为 DataWedge 的实用程序。这是其手册的链接(PDF 文件)。查看第 5 页的回车和换行。DataWedge 手册(旧但仍应有帮助)
主要优点是它允许用户在条形码损坏的情况下也使用手动输入。缺点是您会丢失条形码元数据(即条形码编码类型等),但无论如何 99% 的时间都不需要这样做。