如何使用C#.Net实现POS扫描仪的DirectIO事件?

问题描述 投票:0回答:1

我正在尝试使用Pos Scanner的DirectIO事件生成错误的提示音,但我不知道正确的参数。事件名称为DirectIO,它使用了三个参数,其语法为:

directIO(DIO_SCANNER_DIO_ERROR_BEEP,数据,对象);

我们不知道上述事件接受该参数。您能否在C#/ VB.Net中向我们提供有关上述事件的更多详细信息。

扫描仪详细信息:DataLogic Magellan 9800i

谢谢,

c# winforms barcode-scanner pos magellan
1个回答
0
投票

这是一个有点旧的材料,但是受支持的功能可能会因扫描仪的型号和连接方法而异。OEM USB, RS232 Standard RS232 Single Cable OPOS Service Objects

如果您通过POS for .NET调用OPOS,请参阅此页面。PosCommon.DirectIO Method (POS for .NET v1.12 SDK Documentation)

public abstract DirectIOData DirectIO (
    int command,
    int data,
    Object obj
)

参数

  • 命令命令编号。服务对象分配的特定值。
  • 数据
  • obj

备注使用DirectIO方法允许服务对象向应用程序提供其设备类的标准服务对象不支持的功能。根据服务对象对命令的定义,DirectIO方法可以是异步或同步的。

DirectIO返回DirectIOData类的实例。

DirectIOData Members (POS for .NET v1.12 SDK Documentation)

Scanner对象必须处于DeviceEnabled = true状态。

除非另有说明,否则data参数应为0,obj参数应为空字符串。


如果直接拨打OPOS,请参见以下资源:UnifiedPOS (UPOS) Controls Combined JavaPOS and OPOS Controls

8-1扫描仪控件的DirectIO命令详细信息

此时,为pDatapString参数定义一些变量,并使用ref指定。例如:

int pData = 0;
string pString = "";

int result = axOPOSScanner1.DirectIO(DIO_SCANNER_DIO_ERROR_BEEP, ref pData, ref pString);
© www.soinside.com 2019 - 2024. All rights reserved.