我正在编写一个示例UWP程序,它使用EmguCV(一个用VB,C#,.NET等编写的程序的OpenCV包装器),看看我是否可以在一个项目的UWP应用程序中使用它我是继续努力。我正在使用Visual Studio 2017社区和EmguCV 3.3.0.2824,我下载了Windows安装程序并在带有Windows 10 Enterprise x64的Lenovo Thinkpad笔记本电脑上运行它。
出于某种原因,当我尝试构建解决方案时,I get these two compiler errors in this photo.
明文:
XamlCompiler错误WMC1006:无法解析程序集或Windows元数据文件'System.Windows.Forms.dll'
C:\ Program Files(x86)\ Microsoft Visual Studio \ 2017 \ Community \ MSBuild \ Microsoft \ WindowsXaml \ v15.0 \ 8.2 \ Microsoft.Windows.UI.Xaml.Common.targets(354,5 ):Xaml内部错误错误WMC9999:类型Universe无法解析程序集:System.Windows.Forms,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089。
为什么Emgu.CV.UI与UWP API中的UI命名空间之间存在程序集冲突?如何在我的应用中启用这两项功能?
This photo is what the Solution Explorer looks like.
明文: 我有创建空白UWP应用程序时Visual Studio 2017生成的所有默认文件。另外,我有一个名为RTG_Demo_App.dll的文件,其中包含一些用C ++编写的使用OpenCV的代码。在References组中,我引用了Emgu.CV.UI和Emgu.CV.World。
我正在使用默认代码App.xaml.cs以及MainPage.xaml.cs,除了我有以下几行:
using Emgu.CV;
using Emgu.CV.Structure;
using Emgu.CV.UI;
在做了一些研究和实验之后,我发现的根本原因是对Emgu.CV.UI(Emgu.CV.UI.dll)的引用与UWP库中的UI命名空间之间存在冲突。我无法删除对“通用Windows”库的引用,因为它是我项目所需的UWP框架的一部分。
我确实做了一些研究,除了我无法找到项目涉及EmguCV的资源,其中脚本直接用C#编写,并且是为UWP而不是Visual C#或.NET构建的。
我在这里要完成的是一个使用OpenCV的项目,目标是UWP,脚本是C#。 C#不支持OpenCV,所以我使用的是EmguCV。
请帮帮我。
答案 0 :(得分:0)
System.Windows.Forms
不适用于UWP项目,因为它是User& amp;的包装器。 GDI,它们都不适用于UWP。
如果您只想在桌面上发布,则可以使用Desktop Bridge项目。