2009-02-06 89 views
13

如何从.net windows应用程序中的条码扫描器读取数据?从.net(C#)windows应用程序中的条码扫描器中读取数据!

有人能给出要遵循的步骤顺序吗?我对此很新。

+4

1)购买条码扫描器。 2)阅读手册。说真的,更具体一些可能有助于得到一个答案 – 2009-02-06 10:21:18

+6

这有点苛刻 - 并非所有的扫描仪都是一样的,所以知道它们如何工作会告知购买决定。 – Alnitak 2009-02-06 10:22:12

回答

35

看看扫描仪插孔。

如果它看起来像这样:

,那么它是一个keyboard wedge扫描仪。它就像一个键盘:只需将您的条形码输入到编辑栏即可。

如果它看起来像这样:

,这是一个serial port扫描仪。

您需要创建一个System.IO.Ports.SerialPort的实例并用它与扫描仪通信。

如果它看起来像这样:

,这是一个USB扫描仪。从程序员的角度来看,它可以是keyboard wedgeserial port扫描器。你需要看看手册,找出它是哪一个,并使用上述方法之一。

P.S.如果你真的在这里发布你的扫描仪模型,会更容易。

4

大多数现代条形码扫描仪的作用就像键盘一样。

我以前在C#中编写代码来扫描门票 - 没有必要的特殊技巧,只要确保输入焦点位于合适的文本框中并扫描代码即可!

+1

除此之外:有时您必须在条形码扫描器中进行设置(请参阅手册中的操作步骤),以便正确读取代码。例如,如果我们不将扫描仪的语言设置为德语(默认值:英语),则在阅读后会有一些特殊(非英文)字符混乱。 – 2009-02-06 10:36:11

+0

Alnitak,你能提供代码片段吗? – Dhana 2009-02-06 11:30:54

4

我现在使用连接到我的几个winform(和1控制台)应用程序的黄蜂USB WCS3905条码扫描仪,虽然没有注意到与其他品牌的USB扫描仪的区别。

我总是测试一个新的方法时,就是启动记事本并扫描一切代码的负载;书籍,DVD,资产标签,但最重要的是我需要追踪的股票。这将允许您可视化数据的捕获方式。

根据我的经验,他们都像用户一样在键盘上连续输入每个字符,然后按下“Enter”键。

对于每个字符:在一个文本框控制扫描然后至少以下事件触发(注不完整的条形码):
的KeyDown
按键响应
框TextChanged
KEYUP

在端部的输入击键的扫描可用于推送表单的AcceptButton

应该注意的是,我只在英美英文&美式英语配置的Windows系统上使用过这些。

G-

0

如果您使用的是键盘口,正常的设备或楔形软件允许一个前缀和/或后缀与其他字符键盘流。

可以使用每个窗体的按键预览来侦听前缀&后缀字符 - 当拦截类似于条形码的东西时,可以将条形码文本发送到正确的编辑框或用于弹出对话框。

如果您正在设置自己的编码系统,根据条码类型的不同,您还可以在您的条码中嵌入特殊字符以识别正在扫描的内容,例如,以SB ^开始的扫描将代表库存仓的扫描。

当使用键盘楔时,通常无法确定哪一种条形码正在扫描 - 有时该格式可以方便地确定内容。

相关问题