OpenCVSharp:无法加载DLL“OpenCvSharpExtern”

我在我的项目中安装了最新的OpenCVSharp 2(2.4.10.201 …)和NuGetpipe理器。 关于OpenCVSharp.CvMat的一切工作正常(加载,操作等),所以我相信安装是正确的。

但是我根本无法使用OpenCVSharp.CPlusPlus! 问题是它不会加载OpenCvSharpExtern.dll。

从try-catch块显示错误:

try { Mat mat = new Mat(); } catch (Exception err) { Console.WriteLine( err ); } System.TypeInitializationException: The type initializer for 'OpenCvSharp.CPlusPlus.Mat' threw an exception. ---> System.DllNotFoundException: Unable to load DLL 'OpenCvSharpExtern': The specified module could not be found. (Exception from HRESULT: 0x8007007E) at OpenCvSharp.CPlusPlus.NativeMethods.core_Mat_sizeof() at OpenCvSharp.CPlusPlus.Mat..cctor() --- End of inner exception stack trace --- at OpenCvSharp.CPlusPlus.Mat..ctor() at MainClass.Main() in C:\Users\kotsias\Documents\Visual Studio 2015\Projects\MyCVSharp\ConsoleApplication1\Test.cs:line 14 

OpenCvSharpExtern.dll IS与我的.exe一起部署在以下子文件夹中:

.. \ DLL \ X86

.. \ DLL \ 64

如果我手动将x64 .dll复制到与我的.exe文件相同的文件夹中,我仍然得到以上相同的错误。 如果我复制x86 .dll ,我得到一个不同的错误:

 System.TypeInitializationException: The type initializer for 'OpenCvSharp.CPlusPlus.Mat' threw an exception. ---> System.BadImageFormatException: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B) at OpenCvSharp.CPlusPlus.NativeMethods.core_Mat_sizeof() at OpenCvSharp.CPlusPlus.Mat..cctor() --- End of inner exception stack trace --- at OpenCvSharp.CPlusPlus.Mat..ctor() at MainClass.Main() in C:\Users\kotsias\Documents\Visual Studio 2015\Projects\MyCVSharp\ConsoleApplication1\Test.cs:line 14 

Solutions Collecting From Web of "OpenCVSharp:无法加载DLL“OpenCvSharpExtern”"

可能您没有安装Visual C ++ Redistributable软件包的正确版本。

OpenCvSharp 2.4.10使用Visual C ++ 2013可再发行组件包。 但是, OpenCvSharp 2.4.10已被弃用,作者建议使用OpenCvSharp 3.2 :

#OpenCVSharp 2.4.10用于.NET Framework的OpenCV 2.4.10的跨平台包装。

此项目已被弃用。 最新版本在OpenCvSharp中可用。

欲了解更多信息检查:

  • 无法加载DLL(模块无法找到HRESULT:0x8007007E)的讨论
  • 为什么在我的电脑上安装了许多“Microsoft Visual C ++可再发行组件”? 文章
  • OpenCvSharp 3.2 NuGet页面。