Невозможно включить заявленное устройство, используя POS для.Net

Я использую ручной сканер штрих-кода Motorola 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

Motorola предоставляет приложение под названием 123Scan для помощи в настройке и тестировании. С помощью этого приложения я могу подтвердить, что устройство работает. Это приложение было в конечном итоге удалено как часть устранения неполадок.

Любые предложения будут оценены.

2 ответа

Решение

Вы пытались установить драйвер OPOS?

РЕДАКТИРОВАТЬ:

Вместо того, чтобы связывать это каждый раз, когда он истекает, вы должны активно искать "OPOS Driver" на http://support.symbol.com/ чтобы вы могли скачать драйвер для соответствующей платформы.

В процессе обучения выяснилось, что открытие и получение устройства не означает, что оно действительно подключено. POS Explorer позволит вам открыть соединение и запросить устройство для эксклюзивного использования, даже если оно физически не подключено. Частично это связано с тем, что POS Explorer использует объект службы для связи с оборудованием.

Только после того, как вы включите устройство, вы получите положительное подтверждение того, что устройство доступно. На самом деле, если включить не удается, у вас есть подтверждение, что устройство не подключено.

Ручной сканер Motorola DS4208 не требует специального файла сопоставления конфигурации. После установки Motorola ADK устанавливаются правильные сервисные объекты, и внутри них хранятся аппаратные идентификаторы. В моем предыдущем коде я пытался использовать служебный объект "Пример сканера", доступный в POS Explorer SDK, для связи с этим оборудованием, что было моей основной ошибкой.

После установки драйвера OPOS для сканеров Symbol v3.31 у меня не было проблем с тестированием оборудования.

Другие вопросы по тегам