繁体   English   中英

错误:无法加载 DLL '.dll':找不到指定的模块。 (HRESULT 异常:0x8007007E)- 这是什么错误?

[英]Error: Unable to load DLL '.dll' : The specified module could not be found. (Exception from HRESULT: 0x8007007E) - What is this error?

情况:

我正在尝试运行CharLS JPEG-LS 压缩算法实现

站点中有关于您可以在哪里下载 C# VS 2010 解决方案的源代码。 在解决方案中,有 2 个 C# Class 库项目、1 个非托管 VC++ 项目和 1 个 C# 控制台应用程序。 控制台应用程序调用 class 库之一,“using CharLS;”,并且该特定库引用非托管 VC++ 项目。 控制台应用程序在调试模式下完美运行。

问题:

但是当我为“发布”编译控制台应用程序并运行.exe(可执行文件)时,当在此过程中调用特定的 function 时,它会给我这个错误:

错误:无法加载 DLL 'CharLS.dll':找不到指定的模块。 (HRESULT 异常:0x8007007E)

我还尝试创建另一个项目并从那里引用 class 库,但我得到了同样的错误。

我已经尝试通过 .net 阅读其他解决方案,但它们对我没有帮助。

此错误的部分原因可能是:

  1. 您提供给“DllImport”属性的“EntryPoint”属性的名称与您从本机组件导出的 function 不匹配。

  2. 另一个原因可能是缺少 dll 本身/或其任何依赖项(使用依赖项 walker 并检查)

  3. 第三个原因可能是调试/发布版本不匹配。

在以发布模式运行之前,您是否(重新)构建了项目? 看起来你没有,发布 output 不包含这样的库。 无论如何都要检查一下。

确保它确实已在服务器上注册。 您是否也将应用程序池(假设是 IIS7+)设置为允许 32 位进程?

如果您有 dll,只需将其手动添加到构建 output 文件夹 (bin)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM