首先,这不是在SO和网络中问到的另一个Emgu CV DLL盲目问题。我已经研究了这个问题,找不到解决方法。
我已将我在一个项目中使用的EmguCV版本更新为最新版本(3.4.3)。在Dev Machine和Windows 10计算机上,一切正常运行,但是对于Windows 7 X64 Spack1 EmguCv抛出永无止境的DLL not found Exception
。
我在使用旧版本时遇到了这个问题,该旧版本通过安装 Visual Studio Redistributable 而消失了。当前版本似乎使用Visual C ++ 2017 Redistributable,因为有一个DLL EmguDir中的文件(14.0)。我尝试安装2015年的x86版本以及2017年VC Redistributable软件包的x86和x64版本。(我的应用程序是x86)。我还将x86和x64文件夹复制到了应用程序目录中(如果没有这些文件夹,较旧的版本似乎可以正常工作,我只是将x86文件夹的内容复制到了应用程序目录中。)
再次发生相同的错误。我被困在这里。请帮忙
************** Exception Text **************
System.TypeInitializationException: The type initializer for 'Emgu.CV.CvInvoke' threw an exception. ---> System.DllNotFoundException: Unable to load DLL 'cvextern': The specified module could not be found. (Exception from HRESULT: 0x8007007E)
其他DLL(Emgu使用打包程序打包到主exe)。
答案 0 :(得分:3)
在 Visual Studio 2019 中使用 Nuget 包管理器进行安装 工具> NuGet 包管理器 > 包管理器控制台
并安装这个
对我来说一切都很好。
答案 1 :(得分:0)
我也有同样的问题。在这个论坛emgucv上,我不知道为什么来自emgucv 3.4.3的cvextern.dll
无法加载cvextern(因为无法找到cvextern),并且您允许使用来自以下位置的文件cvextern.dll
emgucv 3.4.2(确保选择x64 / x86),复制到/bin/Debug
,并在Visual Studio中完成构建程序后,在/bin/Debug/x86
或/bin/Debug/x64
中自动找到此文件。
希望获得帮助。