Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用UWPDesktop nuget包从WPF应用程序调用UWP OCR示例_C#_Wpf_Xaml_Uwp - Fatal编程技术网

C# 使用UWPDesktop nuget包从WPF应用程序调用UWP OCR示例

C# 使用UWPDesktop nuget包从WPF应用程序调用UWP OCR示例,c#,wpf,xaml,uwp,C#,Wpf,Xaml,Uwp,我正在从我的WPF应用程序调用Windows10API。我还安装了“UWPDesktop”Nuget包。 我已经从WPF应用程序调用了UWP OCR API,在运行代码之后,我得到了一个 例外 System.InvalidOperationException:'进程没有包标识。 (HRESULT的例外:0x80073D54)' 我刚刚在wpf应用程序中编写了这段代码。 并且还添加了UWPDesktop nugget包来访问UWP API var ocrEngine=Windows.Media.O

我正在从我的WPF应用程序调用Windows10API。我还安装了“UWPDesktop”Nuget包。 我已经从WPF应用程序调用了UWP OCR API,在运行代码之后,我得到了一个 例外

System.InvalidOperationException:'进程没有包标识。 (HRESULT的例外:0x80073D54)'

我刚刚在wpf应用程序中编写了这段代码。 并且还添加了UWPDesktop nugget包来访问UWP API

var ocrEngine=Windows.Media.Ocr.ocrEngine.TryCreateFromLanguage(新Windows.Globalization.Language(“en”)

我在第一行遇到异常


此异常是什么以及发生的原因?

该错误表示只能从UWP应用程序(在应用程序容器中运行)调用OcrEngine.TryCreateFromLanguage,而不能在桌面应用程序(不在容器中运行)中调用。如果您查看godapi文档,您会发现一个可以在UWP和桌面上下文中调用的Windows运行时方法API。OcrEngine方法没有此属性,因此无法从桌面应用程序调用


您可以选择使用不同的OCR软件包或从应用程序上下文中调用它。对于后者来说,将WPF应用程序打包为UWP应用程序的

应该考虑添加一些代码来帮助我们。“上帝API文档”是什么意思?Microsoft文档网站上未列出该属性。啊,对不起,我现在明白你的意思了。例如,BluetoothLEDevice在文档中定义了该属性。
        var file = await Package.Current.InstalledLocation.GetFileAsync(@"Assets\test.png");

        using (var stream = await file.OpenAsync(Windows.Storage.FileAccessMode.Read))
        {
            // Create image decoder.
            var decoder = await Windows.Graphics.Imaging.BitmapDecoder.CreateAsync(stream);

            // Load bitmap.
            var bitmap = await decoder.GetSoftwareBitmapAsync();

            // Extract text from image.
            OcrResult result = await ocrEngine.RecognizeAsync(bitmap);

            // Return recognized text.
            Trace.WriteLine(result);
        }