5

从浏览器访问客户端 PC 上的设备(条形码阅读器、扫描仪等)的各种方法有哪些?我意识到我的用户可能需要一个插件。这些设备可能具有特定于其设备的 API;如果可用,我想利用他们的 API(可能是 Java,可能是 C,可能是命令行)。

4

4 回答 4

5

已签名的Java 小程序可以对大多数事物进行独立于平台的访问。用户必须安装 Java,并且必须允许签名的小程序运行。

如果您为NSAPI编写插件,一旦他们安装了它,您就可以访问用户可以访问的任何内容。当然,他们必须安装插件。

Flash 提供了对设备的大量访问。

于 2010-02-01T18:11:51.783 回答
1

这不是一件小事,并且没有标准化的 API(可能在仅限于 Internet Explorer 的 JScript/ActiveX 领域除外)。

要通过 TWAIN 界面访问扫描仪,请查看此问题以了解我所知道的所有普遍可用的选项。

大多数其他事情将归结为自定义编程的 Active-X 和其他插件。我看过 SO 上讨论的商业条形码扫描仪插件,但现在找不到问题。

于 2010-02-01T18:09:14.137 回答
1

许多条码阅读器可以插入键盘和 PC 之间,因此扫描的条码直接进入键盘缓冲区。其他设备要么插入串行端口,要么具有模拟串行端口的驱动程序。以下 python 代码会将数据从真实或虚拟 COM 端口复制到活动窗口的键盘缓冲区。COM 端口号是硬编码的,但很容易更改。

import serial
import SendKeys

ser = serial.Serial(2)
print ser.portstr
while 1: # exit loop when ctrl/c pressed
    line = ""
    while 1:
        char = ser.read()
        if char == "\r": break
        line = line + char
    print line
    SendKeys.SendKeys(line, 0)
ser.close()
于 2010-02-01T18:12:36.093 回答
0

根据您要执行的操作,Silverlight 和 Adob​​e 在此领域的能力都有限。网络摄像头、Silverlight 4.0 中的打印等。然而,这并非易事。Silverlight 4.0 和 Flash 都支持条码扫描。

于 2010-02-01T18:12:54.840 回答