解决“无法加载DLL“cvextern”:找不到指定模块”问题

1. 问题描述:

运行代码时弹出报错:System.TypelnitializationException:“Emgu.CV.CvInvoke"的类型初始值设定项引发异常。“内部异常 DllNotFoundException: 无法加载DLL"cvextern”:找不到指定的模块。

2. 解决方法:

方法一:手动导入相应的dll

  • 工程缺cvextern.dll,将相应dll(EmguCv安装目录下emgucv-windesktop 4.5.4.4788\libs\x64\cvextern.dll)复制到debug目录下,注意如果用的是X64编译的,则应该复制在X64\debug目录下;如果没安装EmguCV可能在电脑上找不到cvextern.dll。
  • dll版本不对,重新复制正确的版本;

方法二:通过Nuget工具导入库.runtimes.window库。

  • 若是用NuGet工具导入的EmguCV库,往往是未导入.runtimes.window库;
  • 若是用NuGet工具导入的EmguCV库,如果导入的版本过高,则可能安装不了.runtimes.window库;

注: 若是上述两种方法都不行,此时需要把目标平台改为X64即可(并且取消勾选“首选32位”)。

可(并且取消勾选“首选32位”)。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐