В настоящее время я разрабатываю приложение UWP, в котором один шаг - сканирование штрих-кода, закодированного в коде 39 с использованием камеры.UWP BarcodeScanner не распознает Code39 Barcode
С другими (UWP-) приложениями, которые я нашел в магазине, мой пример кода распознается правильно, поскольку кодируется code39 (поэтому я предполагаю, что это действительный код).
я смотрел на образец BarcodeScanner из microsoft uwp samples on github (я также смотрел на образец CameraBarcodeScanner, который был удален из GitHub недавно)
Когда я использую BarcodeScanner
и ClaimedBarcodeScanner
классы от Windows.Devices.PointOfService
, другие штрих-коды (EAN8 или EAN13) распознаются правильно. (Таким образом, я предполагаю, что такое распознавание штрих-кода)
Я попытался использовать SetActiveSymbologiesAsync
, чтобы сканер смог найти штрих-коды code39. Всякий раз, когда я называю его без BarcodeSymbologies.Ean8
в списке, исключение брошено:
"A device attached to the system is not functioning. (Exception from HRESULT: 0x8007001F)"
Когда я называю его BarcodeSymbologies.Ean8
в списке, он ошибочно распознает код EAN8 при наведении камеры на Code39 штрих-кода.
Вот мой код:
private void OnScannerDataReceived(ClaimedBarcodeScanner sender, BarcodeScannerDataReceivedEventArgs args)
{
var dataLabel = string.Format("{0}", Encoding.UTF8.GetString(args.Report.ScanData));
var symbol = BarcodeSymbologies.GetName(args.Report.ScanDataType);
Debug.WriteLine($"LABEL: {dataLabel} | BARCODE: {symbol}.");
BarcodeReceived?.Invoke(this, dataLabel);
}
Не могли бы вы предоставить информацию об оборудовании? Нам нужны детали для справки. –
Я пробовал его на следующих устройствах: * Sony Vaio VPCSB2 (внутренний веб-камера) * Dell XPS15 (внутренний веб-камера) * Panasonic FZ-G1 (внутренняя камера) * все выше с USB-веб-камера Microsoft HD3000 Поскольку никакая конфигурация не может обнаружить мой штрих-код code39, я предполагаю, что проблема связана с программным обеспечением. – Nasto