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

有帮助吗?

解决方案

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

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

Flash提供了很多对设备的访问。

其他提示

这不是一件琐碎的事情,也没有标准化的API(除了仅限于Internet Explorer的JScript/ActiveX区域外)。

要通过Twain接口访问扫描仪,请查看 这个问题 对于所有我知道的所有通常可用的选项。

大多数其他内容都将归结为自定义编程的Active-X和其他插件。我已经在So中讨论了商业条形码扫描仪插件,但现在找不到问题。

可以在键盘和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()

根据您要做的事情,Silverlight和Adobe在这个领域都具有有限的能力。网络摄像头,在Silverlight 4.0中打印等。但是,它是不平凡的。 Silverlight 4.0和Flash都支持条形码扫描。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top