我正在尝试在Windows 10上的Visual Studio 2017中创建UWP应用程序(用于桌面)。一切正常,添加了一些UI元素,我可以毫无问题地启动该应用程序。
我想将OpenCV(3.4.9)集成到我使用CMake和Visual Studio 2017构建的应用程序中(遵循https://medium.com/@rabbi.cse.sust.bd/how-to-build-opencv-for-universal-windows-platform-uwp-1a642ec09955中的步骤)
我已经检查了每个配置的库路径(我为每个x64 / Debug,x64 / Release,x86 / Debug,x86 / Release构建了一个)。
当我开始使用OpenCV时,问题开始了,例如,通过包含“ opencv2 / opencv.hpp”。
我仍然可以毫无错误地进行构建,但是当我尝试运行该应用程序(在VS中运行而不进行调试)时,出现错误:
无法激活Windows Store应用。激活请求失败,并显示以下错误:应用未启动
直接运行.exe时,什么也没发生(我必须先将一些DLL添加到该文件夹中)。
我尝试过类似问题的建议,但没有运气。
重建或更改配置无济于事。
当包含“ opencv2 / core.hpp”时,我可以启动该应用,然后执行
cv::Mat img;
但是如果我写
cv::Mat img(200, 200, CV_8UC3);
发生相同的错误。撰写
cv::Point pt(10, 10);
另一方面可以正常工作。
我已经没有足够的想法去尝试了。
答案 0 :(得分:0)
好,所以我发现了问题。实际上与发现相同问题的其他人类似:
Visual Studio无法找到OpenCV的DLL文件。我确实对此表示怀疑,因此我将bin文件夹添加到了我的路径,并将DLL文件复制到了项目根目录以及“ ProjectRoot / x64 / Release / ProjectName”。
但是显然,DLL文件需要位于
中。“ ProjectRoot / x64 / Release / ProjectName / AppX”
用于x64发行版。
如果有人对为什么无法通过PATH或在项目根目录中找到它们有任何想法,请告诉我。 我想原因与二进制文件取决于配置这一事实有关吗?
无论如何,我现在可以通过UWP应用中的OpenCV加载图像,所以我很高兴。
希望这可以减轻别人的头痛。