如何在.NET Windows应用程序中读取条形码扫描仪中的数据?
有人能给出要遵循的步骤顺序吗? 我很新手。
看一下扫描仪插孔。
如果它长这样:
那么它是一个键盘嵌入式
扫描仪。它的作用就像一个键盘:只需将您的条形码键入编辑字段即可。
如果它长这样:
它是一个串口
扫描仪。
您需要创建一个System.IO.Ports.SerialPort
实例,并使用它与扫描仪通信。
如果它长这样:
(来源:datapro.net)
它是一个USB
扫描仪。从程序员的角度来看,它可以是键盘嵌入式
或串口
扫描仪。您需要查找手册,找出它是哪种类型,并使用上面的方法之一。
P.S. 如果您在这里发布您的扫描仪型号,那么问题会更容易解决。
我现在使用Wasp USB WCS3905条码扫描仪连接到我的多个winform(和1个控制台)应用程序,虽然没有注意到与其他品牌的USB扫描仪有什么区别。
当新的扫描仪出现时,我总是通过启动记事本并扫描各种东西(书籍、DVD、资产标签,但最重要的是需要跟踪的库存)来测试。这将允许您可视化数据的捕获方式。
根据我的经验,它们都像用户一样,逐个输入每个字符,然后按“Enter”键。
对于在文本框控件中扫描的每个字符(注意:不是完整的条形码),至少会触发以下事件:
KeyDown
KeyPress
TextChanged
KeyUp
扫描结束时的Enter按键可以用于推送表单的AcceptButton
值得注意的是,我只在英国英语和美国英语配置的Windows系统上使用过这些设备。
G-
大多数现代条形码扫描仪的操作方式与键盘相同。
我之前用C#编写过扫描门票的代码 - 没有特殊技巧,只需确保输入焦点在适当的文本框中,然后扫描代码即可!
如果您正在使用键盘楔子,通常设备或楔子软件允许您在键盘流中添加前缀和/或后缀字符。
可以使用表单的键预览来“侦听”前缀和后缀字符 - 当拦截到类似于条形码的内容时,条形码文本可以发送到正确的编辑框或用于弹出对话框。
如果您正在设置自己的编码系统,根据条形码类型,您还可以嵌入特殊字符以识别正在扫描的内容,例如以SB^开头的扫描表示库存箱的扫描。
当使用键盘楔子时,通常无法确定正在扫描哪种类型的条形码 - 有时格式可以方便地确定内容。