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