C# UWP条形码扫描仪无法识别代码39条形码

C# UWP条形码扫描仪无法识别代码39条形码,c#,.net,uwp,windows-10-universal,barcode-scanner,C#,.net,Uwp,Windows 10 Universal,Barcode Scanner,我目前正在开发一个UWP应用程序,其中一个步骤是使用摄像头扫描编码为code39的条形码 对于我在商店中找到的其他(UWP-)应用程序,我的示例代码被正确识别为code39编码(因此我假设它是有效代码) 我看了一下条形码扫描仪的样本 (我还查看了CameraBarcodeScanner样本,该样本最近从github中删除) 当我使用Windows.Devices.PointOfService中的BarcodeScanner类时,其他条形码(EAN8或EAN13)会被正确识别。(因此,我假设条形码

我目前正在开发一个UWP应用程序,其中一个步骤是使用摄像头扫描编码为code39的条形码

对于我在商店中找到的其他(UWP-)应用程序,我的示例代码被正确识别为code39编码(因此我假设它是有效代码)

我看了一下条形码扫描仪的样本 (我还查看了CameraBarcodeScanner样本,该样本最近从github中删除)

当我使用
Windows.Devices.PointOfService
中的
BarcodeScanner
类时,其他条形码(EAN8或EAN13)会被正确识别。(因此,我假设条形码重新识别是有效的)

我尝试使用
SetActiveSymbologiesAsync
使扫描仪能够找到code39条形码。每当我在列表中没有
BarcodeSymbologies.Ean8
的情况下调用它时,就会抛出一个异常:

"A device attached to the system is not functioning. (Exception from HRESULT: 0x8007001F)"
当我使用列表中的
BarcodeSymbologies.Ean8
调用它时,当将相机指向code39条形码时,它会错误地识别Ean8代码

这是我的密码:

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);
}

感谢您报告此问题

好的,你问的场景是使用我们的内置软件解码器和一个标准的相机镜头。不幸的是,我们发现该解码器在准确读取一维条形码(包括代码39)时存在问题,并将在未来的版本中解决该问题


代码39适用于物理条形码扫描仪,因此这是相机镜头解码器特有的问题。我们希望在未来的版本中有一个新的软件解码器可以解决这个问题。我们建议目前仅使用带有二维码的相机镜头解码器。

感谢您报告此问题

好的,你问的场景是使用我们的内置软件解码器和一个标准的相机镜头。不幸的是,我们发现该解码器在准确读取一维条形码(包括代码39)时存在问题,并将在未来的版本中解决该问题

代码39适用于物理条形码扫描仪,因此这是相机镜头解码器特有的问题。我们希望在未来的版本中有一个新的软件解码器可以解决这个问题。我们建议现在只使用带有二维码的相机镜头解码器。

@Nasto

2018年春季对Windows 10版本1803的更新引入了一种新的软件解码器,该解码器将支持Code39。您可以在上找到更多信息。条码扫描仪的UWP示例应用程序也已更新,以演示摄像头条码支持

特里·沃里克,微软公司

2018年春季对Windows 10版本1803的更新引入了一种新的软件解码器,该解码器将支持Code39。您可以在上找到更多信息。条码扫描仪的UWP示例应用程序也已更新,以演示摄像头条码支持


Terry Warwick,Microsoft

您能提供您的硬件信息吗?我们需要一些详细信息供参考。我已经在以下设备上试用过:*索尼Vaio VPCSB2(内部网络摄像头)*戴尔XPS15(内部网络摄像头)*松下FZ-G1(内部网络摄像头)*所有这些都使用了Microsoft HD3000 USB网络摄像头,因为没有配置可以检测到我的code39条形码,我认为问题与软件有关。你能提供你的硬件信息吗?我们需要一些详细信息供参考。我已经在以下设备上试用过:*索尼Vaio VPCSB2(内部网络摄像头)*戴尔XPS15(内部网络摄像头)*松下FZ-G1(内部网络摄像头)*所有这些都使用了Microsoft HD3000 USB网络摄像头,因为没有配置可以检测到我的code39条形码,我认为这个问题与软件有关,我理解。我不明白的是,Code39在过去的版本中没有出现问题。我有相同的设置,在过去的3或4周的某个时候,似乎有一个变化。有趣的是,UWP GitHub项目中的条形码样本也被删除了。什么改变了?我明白。我不明白的是,Code39在过去的版本中没有出现问题。我有相同的设置,在过去的3或4周的某个时候,似乎有一个变化。有趣的是,UWP GitHub项目中的条形码样本也被删除了。改变了什么?我期待能够使用它,但由于它只支持1803及更高版本,我们这些OEM设备(如我的霍尼韦尔CT50)将不得不等待,因为OEM让我们停留在旧版本的Win10上。此外,您似乎非常熟悉条形码扫描、UWP和霍尼韦尔,请查看此帖子:我期待能够使用此功能,但由于它仅支持1803及更高版本,我们这些OEM设备(如我的霍尼韦尔CT50)将不得不等待,因为OEM让我们停留在旧版本的Win10上。此外,您似乎对条形码扫描、UWP和霍尼韦尔非常了解,请查看以下帖子: