【问题标题】:VS2012 dll file not found at run timeVS2012 运行时找不到 dll 文件
【发布时间】:2012-10-24 00:31:14
【问题描述】:

我有一个引用 dll 文件的项目。我只是通过右键单击属性添加了一个引用,选择了添加引用,然后浏览了 dll。 Intellisense 识别库及其所有类/方法,但是当我运行它时,我得到了这个。

program.exe 中出现“System.IO.FileNotFoundException”类型的未处理异常

附加信息:无法加载文件或程序集“Api.dll”或其依赖项之一。找不到指定的模块。

该文件出现在 bin 文件夹中,并且仍然在我浏览过的位置。如果我不使用任何类或方法,程序运行不会出错。该库没有我知道的任何依赖项。

编辑:使用我认为是导致问题的依赖遍历器发现了很多丢失的依赖 DLL 文件。将所有依赖的 DLL 放在同一个文件夹中并引用它后,问题仍然存在

【问题讨论】:

    标签: c# dll visual-studio-2012 dll-reference


    【解决方案1】:

    运行应用程序时运行Fusion Log Viewer。它会准确地告诉你哪些程序集没有加载。

    如果运行 Fusion Log Viewer 时没有显示任何内容,请尝试以下设置:

    我不明白为什么除非我以这种方式使用设置,否则结果不会显示。我会删除所有条目,运行应用程序,然后点击刷新按钮。

    【讨论】:

    • 查看器中未显示任何应用程序。是否有一些特殊的方法我应该调试程序以使其记录程序集?
    • 当我尝试单步进入使用API​​的方法时抛出异常,而不是与API本身的行
    • 这有帮助。它说 AveAPI 已在日志中成功加载,但 MyProgram.resources 失败。我尝试发布并运行它,但异常文本未显示在程序集列表中加载的 API。
    【解决方案2】:

    事实证明,即使我发现缺少的 DLL 使用依赖walker,它们也没有通过原始 DLL 导入到我的项目中。将它们移动到 bin/debug 文件夹中修复了错误

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-14
      • 1970-01-01
      • 1970-01-01
      • 2014-09-04
      • 1970-01-01
      • 2020-12-18
      • 1970-01-01
      • 2014-04-26
      相关资源
      最近更新 更多