gpt4 book ai didi

c# - 使用 OPOS 兼容硬件的事件顺序是什么?

转载 作者:行者123 更新时间:2023-12-02 22:25:00 24 4
gpt4 key购买 nike

我正在使用兼容 OPOS 的 MSR。是事件的顺序:

  1. 打开
  2. claim
  3. 启用
  4. 发布
  5. 关闭

最佳答案

从技术上讲,它是 Open()/ClaimDevice()/DeviceEnabled = TRUE/DeviceEnabled = FALSE/ReleaseDevice()/Close()

Open() 请求指定设备的句柄,如果该设备存在,它应该可以工作。 Close()是匹配对函数,当应用程序不再需要该设备时应调用它。

ClaimDevice()(以前称为 Claim() 方法)将尝试访问设备。如果设备是专用设备(例如条形码扫描仪),如果不同的进程已经声明了它,ClaimDevice() 将失败。 ReleaseDevice()(也称为 Release() 但它的名称与 COM 方法 Release() 冲突)是应该匹配的对函数当应用程序不再需要访问设备时被调用。这样可以在应用程序之间优雅地共享设备。一个示例可能是,如果您的销售应用程序上有一个用于进入库存应用程序的按钮 - 销售应用程序应调用扫描仪上的 ReleaseDevice(),以便库存应用程序可以成功调用 ClaimDevice()

DeviceEnable 设置为 TRUE 将使设备准备好输入。如果是条形码扫描器,它会打开激光。只有启用的设备才会触发 DataEvent()。当您准备好接受条码时,您通常会将条码扫描仪设置为 true,如果条码有误并且您希望它们停止扫描,则将其设置为 false。

从技术上讲,您不必在调用 ReleaseDevice() 之前将 DeviceEnable 设置为 false;您甚至不必在调用 Close() 之前调用 ReleaseDevice()。 OPOS 就像一个神经质的女仆,即使应用程序没有清理它们也会清理它们。但是,我个人认为,如果设备管理不当,这就是草率编程的证据。

关于c# - 使用 OPOS 兼容硬件的事件顺序是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13093136/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com