【问题标题】:Assembly Manifest loading error (.NET and C++ dlls)程序集清单加载错误(.NET 和 C++ dll)
【发布时间】:2009-10-14 22:20:00
【问题描述】:

我的应用程序(纯 DotNET 2.0)正在引用另一个纯 DotNET 2.0 dll,该 dll 正在 PInvoking 到非托管 (C++ 2005) dll。在某些计算机上这工作正常,在其他计算机上会出现一致的错误消息:

Could not load file or assembly 
'C:\Program Files\Rhinoceros 4.0\Plug-ins\Grasshopper\rhcommon_c.dll' or one of its dependencies. 
The module was expected to contain an assembly manifest.

Assembly Manifest Error http://en.wiki.mcneel.com/content/upload/images/AssemblyManifestError.png

我一直在用谷歌搜索这个错误,但似乎其他人遇到了这个错误,因为他们有多个名称相同的文件。这不是这里的情况。 RhinoCommon.dll只有一个,rhcommon_c.dll只有一个

计算机已安装最新的 Microsoft C 运行时。

非常感谢, 大卫


编辑: 错误消息是错误的。它实际上是另一个缺少的 dll。很奇怪,DotNET 对此感到如此困惑。

【问题讨论】:

    标签: .net dll unmanaged loading manifest


    【解决方案1】:

    尝试在Dependency Walker 中打开您的应用程序。它应该指出缺少哪个 dll。

    【讨论】:

    • 我做了,它发现了 2 个丢失的延迟加载依赖项:(en.wiki.mcneel.com/content/upload/images/DependencyWalkerGR.JPG)当我在正常工作的计算机上运行相同的测试时,我得到一个(不同的)丢失的依赖项(IESHIMS .DLL) 这些信息重要吗?
    • 我实际上并不认为缺少 dll。这是加载现有 dll 的问题。让我对这个特定错误感到困惑的是,它正在仅 C++ 的 dll 上寻找程序集清单。我的印象是只有 DotNET dll 包含程序集清单。
    猜你喜欢
    • 1970-01-01
    • 2011-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多