当条形码被扫描时,我需要扫描器调用一个事件,这样我就可以以编程的方式使用条形码。
扫描仪在显示模式下扫描良好,并调用我创建的条形码扫描事件。这是我做的
1)登记事件
string inXML = "<inArgs>" +
"<cmdArgs>" +
"<arg-int>6</arg-int>" + //Number of events you want to subscribe to
"<arg-int>1,2,4,8,16,32</arg-int>" + //Comma separated event IDs
"</cmdArgs>" +
"</inArgs>";
cCoreScannerClass.ExecCommand(REGISTER_FOR_EVENTS, ref inXML, out outXML, out status);2)然后,我订阅了这个活动
cCoreScannerClass.BarcodeEvent += new _ICoreScannerEvents_BarcodeEventEventHandler(bcEvent);在除演示模式之外的任何模式下,我需要触发扫描仪:
string inXML = "<inArgs>" +
"<scannerID>" + scanner.ScannerID.ToString() + "</scannerID>" +
"</inArgs>";
cCoreScannerClass.ExecCommand(trigger, ref inXML, out outXML, out status);触发器按预期打开和关闭(我可以直观地看到)。扫描仪扫描条形码时发出嗡嗡声,但不调用任何事件。因为我将连续模式设置为false,所以当我扫描条形码时会释放触发器(这是进一步验证它正在扫描条形码,而不是调用事件)。
其他有用信息:
我使用SNAPI模式下的扫描器
H 112提供了任何技术支持,这是我一直在使用的文档:
发布于 2020-04-23 20:40:40
在与Zebra支持交谈之后,我后来发现在较新的DS-457 (DS457-XX20004ZWW)的新型号中不再支持“只使用软件触发器”的触发模式,因为它“导致软件配置和安全问题”。
如果要通过API触发扫描仪,建议程序员使用“主机触发模式”。API还可以将设备设置为“级别”触发模式,这将允许与主机触发模式相同的功能,但也允许扫描仪的手动物理触发。
https://stackoverflow.com/questions/60175422
复制相似问题