5

我正在使用摩托罗拉 DS4208 手持式条码阅读器。过去我能够成功设置和使用此设备,但最近它已停止工作。这可能是安装其他设备的结果,这些设备也将 OPOS 和 POS 用于 .Net 接口。

这是一个 USB 设备,因此我创建了一个名为 *Moto_Scanner.xml* 的控制配置文件并将其放置在正确的位置。

<PointOfServiceConfig Version="1.0">
<ServiceObject Type="Scanner" Name="Example Scanner">
<HardwareId 
    From="HID\VID_05E0&amp;PID_1300&amp;REV_0100" 
    To="HID\VID_05E0&amp;PID_1300&amp;REV_0100" />
<HardwareId 
    From="HID\VID_05E0&amp;PID_1300" 
    To="HID\VID_05E0&amp;PID_1300" />
</ServiceObject>
</PointOfServiceConfig>

使用 SOMgr.exe,我可以在 POSDevices 中看到具有正确路径的设备。然后我创建了一个 MotoScan 的逻辑名称。然后它按预期出现在逻辑名称列表中。

使用 Microsoft Point Of Service\SDK\Samples\Sample Application\TestApp.exe 我可以打开声明设备。但是,在尝试单击启用复选框后,我收到以下错误消息。

POSControlException ErrorCode(Failure) ExtendedErrorCode(0) occurred: Unable to enable the device.  See inner exception for details.
System.ComponentModel.Win32Exception: The process cannot access the file because it is being used by another process
   at Microsoft.PointOfService.ExampleServiceObjects.HidReader.HidThread.StartReading()
   at Microsoft.PointOfService.ExampleServiceObjects.HidReader.OpenDevice()
   at Microsoft.PointOfService.ExampleServiceObjects.ExampleScanner.set_DeviceEnabled(Boolean value)
Opened device: Example Scanner
Created instance of device: Example Scanner

摩托罗拉提供了一个名为 123Scan 的应用程序来协助配置和测试。使用这个应用程序,我可以确认设备工作正常。作为故障排除的一部分,该应用程序最终被卸载。

任何建议将不胜感激。

4

2 回答 2

1

您是否尝试过安装 OPOS 驱动程序?

编辑:

与其每次过期都重新链接,不如主动在http://support.symbol.com上搜索“OPOS 驱动程序”,以便下载适用于相应平台的驱动程序。

于 2011-07-15T00:04:59.227 回答
0

通过学习过程,很明显打开并认领设备并不意味着它实际上已连接。POS Explorer 将允许您打开连接并声明专用设备,即使它没有物理连接。这部分是因为 POS Explorer 使用服务对象与硬件进行通信。

直到您启用设备后,您才能肯定地确认该设备可用。事实上,如果启用失败,您可以确认设备未连接。

摩托罗拉 DS4208 手持式扫描仪不需要定制的配置映射文件。安装摩托罗拉 ADK 后,安装了正确的服务对象,并且它们内部存储了硬件 ID。在我之前的代码中,我尝试使用 POS Explorer SDK 中可用的“示例扫描仪”服务对象与该硬件进行通信,这是我的主要错误。

安装了用于符号扫描器的 OPOS 驱动程序 v3.31 后,我在测试硬件时没有遇到任何问题。

于 2011-07-18T22:00:11.310 回答