其实扫码枪、条码枪都是一种 HID 设备,读取的原理就是监听键盘输入,因为之前我写过一个网页,通过监听 keypress 实现过,项目运行了一年不到,这次又来了个新需求,就是需要处于非活跃状态录入,如果不是活跃标签页,就无法监听,串口 API 其实也能用,不过已有的扫码枪不一定都能读串口,所以前端也不好做。
我所写的这个桌面端程序就是用来解决这一痛点的,打开后图标会显示到 Windows 托盘上后台运行,将条码枪输入的内容转发到指定后端接口上。 后端可以通过 http 转发的结果进行处理,纯前端可以通过 WebSocket 连接然后处理。
目前用了 2 周没问题,测试了火绒,Windows Defender 不报毒,使用的 Golang, 构建的 exe 文件体积大概 10MB 左右,可以自己编译,支持 Windows 7 以上环境运行。
仓库地址:
1
GeekGao 96 天前
哈哈 如果是开源的,报毒也没啥
|
2
ysc3839 96 天前 via Android
WebHID 不能后台监听吗?
|
4
ShinichiYao 96 天前 via Android
怎么区分是扫码枪扫的不是键盘输入的
|
6
uei OP @ShinichiYao
1. 扫码枪输入时,所有字符几乎能在同一瞬间按顺序输入完毕 2. 输入完毕后会带回车键 满足以上两点就行。 大小写和符号一般是使用 SHIFT 加字母,扫码的内容一般都会很长,输入完毕后带回车键是默认的,多个字符之间的时间间隔会非常短,几乎 100ms 内,我程序里可以改短,如果不放心过滤长度或者正则匹配文本格式即可,说明书里可以设置是带 ENTER 键还是 TAB 键。 |
7
TsubasaHanekaw 96 天前
我们专门买了霍尼韦尔 可以切换 usb 键盘模式和串口模式的扫描枪.然后加本地监听触发
|
8
wen20 96 天前
看了下代码, 短小精悍,使用的仓库一流。
|
9
sgwk 95 天前
不错
|
10
uei OP @TsubasaHanekaw 看过霍尼韦尔扫码枪,要换就得全套都换,领导不太愿意丢掉现有的扫码枪。
|
11
Dyeye 52 天前
大佬 nb 啊,我是想用于监测转发键盘和鼠标的操作,这个软件只能实现输入,做不到我想远程控制妹子的电脑重装系统的操作,有什么方法吗
|