Honeywell N3680 не вызывает событие DataReceived

У меня есть устройство со сканером двигателя Honeywell N3680. Этот механизм должен поддерживаться в соответствии с документацией https://docs.microsoft.com/en-us/windows/uwp/devices-sensors/pos-device-support.

Когда я написал пример приложения UWP с этим кодом. Метод OnDataReceived никогда не вызывается.

async void InitScanner()
{
    BarcodeScanner scanner = null;
    var scannerDevices = await DeviceInformation.FindAllAsync(BarcodeScanner.GetDeviceSelector());
    if (scannerDevices != null && scannerDevices.Count > 0)
    {
        foreach (var scannerDevice in scannerDevices)
        {
            scanner = await BarcodeScanner.FromIdAsync(scannerDevice.Id);
            claimedScanner = await scanner.ClaimScannerAsync();
            claimedScanner.RetainDevice();
            await claimedScanner.EnableAsync();
            claimedScanner.IsDecodeDataEnabled = true;

            claimedScanner.DataReceived += OnDataReceived;
        }
    }
}

Режим POS активирован и в диспетчере устройств устройство выглядит так:

введите описание изображения здесь

Если я использую приложение Honeywell UWP "BarcodeScanningApp", событие DataReceived также не запускается.

В случае настольного приложения Honeywell Windows "POS4NET Validation Utility" сканер сканирует правильно.

Есть ли вариант, как настроить этот модуль сканирования в приложении UWP?

1 ответ

@User1629894,

Устройство, которое вы видите в диспетчере устройств, НЕ является ожидаемым ядром сканирования Honeywell N3680. Вы увидите запись сканера HID POS в диспетчере устройств, когда Honeywell N3680 настроен в режиме сканера HID POS. Только тогда этот сканер будет работать с вашим приложением UWP.

Пожалуйста, обратитесь к документации для вашего Honeywell N3680 по настройке его в режиме сканера HID POS.

Терри Уорик, Microsoft

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