Не може да се активира заявено устройство чрез 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 с правилния път. След това създадох LogicalName на 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, за подпомагане на конфигурацията и тестването. С помощта на това приложение мога да потвърдя, че устройството работи. В крайна сметка това приложение беше деинсталирано като част от отстраняването на неизправности.

Всякакви предложения ще бъдат оценени.


person David Rupe    schedule 15.06.2011    source източник


Отговори (2)


Опитахте ли да инсталирате OPOS драйвера?

РЕДАКТИРАНЕ:

Вместо да свързвате отново това всеки път, когато изтече, трябва проактивно да търсите „OPOS драйвер“ на http://support.symbol.com, за да можете да изтеглите драйвера за подходящата платформа.

person Bryan Crosby    schedule 15.07.2011
comment
@bluefeet: Актуализира публикацията - person Bryan Crosby; 19.11.2013

Чрез процеса на обучение стана ясно, че отварянето и заявяването на устройство не означава, че то действително е свързано. POS Explorer ще ви позволи да отворите връзка и да поискате устройство за изключителна употреба, дори ако то не е свързано физически. Това е отчасти защото POS Explorer използва Service Object за комуникация с хардуера.

Едва след като активирате устройство, ще получите положително потвърждение, че устройството е налично. Всъщност, ако активирането не успее, имате потвърждение, че устройството не е свързано.

Ръчният скенер Motorola DS4208 не изисква персонализиран файл за картографиране на конфигурация. След инсталирането на Motorola ADK са инсталирани правилните сервизни обекти и те имат вътрешно съхранени хардуерни идентификатори. В предишния си код се опитах да използвам сервизния обект „Примерен скенер“, наличен в POS Explorer SDK, за да комуникирам с този хардуер, това беше основната ми грешка.

След инсталирането на OPOS драйвера за скенери за символи v3.31 нямах проблеми с тестването на хардуера.

person David Rupe    schedule 18.07.2011