【问题标题】:EmguCV: Unable to load DLL 'cvextern': The specified procedure could not be foundEmguCV:无法加载 DLL 'cvextern':找不到指定的过程
【发布时间】:2018-09-03 13:48:06
【问题描述】:

将项目发布到 windows server 2003(旧测试机器)时,尝试调用 open cv 函数时出现以下错误。

附加信息:“Emgu.CV.CvInvoke”的类型初始化程序引发异常。无法加载 DLL“cvextern”:找不到指定的过程。 (HRESULT 异常:0x8007007F)

我正在使用 EmguCV 3.4.1 版本的上传库:

vcruntime140.dll
opencv_ffmpeg341.dll
msvcp140.dll
cvextern.dll
concrt140.dll

Emgu 包没有添加任何额外的(dll),我可以在开发人员机器上开发应用程序。

我一直想知道是否应该添加额外的本地 dll。我下载了 3.4.1 版本的二进制文件。文件是这样的:

opencv_core249.dll
opencv_highgui249.dll

以上两个在 3.4.1 包中。当我将它们复制到程序目录时,它也没有帮助。

而且我不知道如何追查问题。

进程监视器没有显示进程正在寻找无法加载的内容。

在内部异常中,我只得到了这个异常:无法加载 DLL 'cvextern':找不到指定的过程。 (HRESULT 异常:0x8007007F)

【问题讨论】:

  • opencv_core249.dll 适用于 OpenCV 2.4.9 -- 对 3.4.1 的工作没有任何帮助。
  • 可能值得在带有Dependency walker 的测试机器上检查cvextern.dll,看看它缺少什么。 (从我在分发包中看到的情况来看,DLL 足够大,可以包含 C++ 实现,因此除了 ffmpeg 之外,不需要更多的 openCV 库......)

标签: c# opencv emgucv


【解决方案1】:

我必须在我的服务器上安装“桌面体验”功能。因为 server 2003 似乎没有它,我不得不将它移动到另一个 server 2008 主机。

【讨论】:

    猜你喜欢
    • 2022-01-10
    • 2019-05-05
    • 2013-09-20
    • 1970-01-01
    • 2017-07-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多