未知模块中发生未处理的“System.IO.FileNotFoundException”类型exception

我正在开发ac#应用程序,我在调试运行时遇到以下错误:

未知模块中发生未处理的“System.IO.FileNotFoundException”类型exception。

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

Autodesk.Navisworks.Timeliner.dll位于应用程序的debug文件夹中。 我修复了.net框架(版本4)但它没有解决它。 有关如何解决此问题的任何想法? 谢谢。

首先检查 – 运行应用程序的目录的工作目录:

  • 右键单击项目,然后选择“属性”。
  • 单击“调试”选项卡。
  • 确认工作目录为空或等于bin \ debug目录。

如果这不是问题,那么询问Autodesk.Navisworks.Timeliner.dll是否需要另一个不存在的DLL。 如果Timeliner.dll不是.NET程序集,则可以使用命令实用程序DUMPBIN确定所需的导入。

 dumpbin /imports Autodesk.Navisworks.Timeliner.dll 

如果它是.NET程序集,则有许多工具可以检查依赖项。

已经提到了Reflector ,我使用Telerik的JustDecompile


另见这个问题

在VS中启用此选项:Just My Code选项

工具 – >选项 – >调试 – >常规 – >启用我的代码(仅限管理)

如果您在64位系统上运行并尝试加载32位DLL,则需要将应用程序编译为32位而不是任何cpu。 如果你不这样做,它的行为就像你描述的那样。

如果不是这种情况,请使用Dependency Walkervalidationdll是否具有所需的依赖项。

在您的cofig文件中添加以下codesnippet

    

我要做的是使用此工具并逐步完成获取exception的位置

http://www.reflector.net/

阅读本文将告诉您如何创建PDB,这样您就不必设置所有参考。

http://www.cplotts.com/2011/01/14/net-reflector-pro-debugging-the-net-framework-source-code/

这是一个试验,我与redgate无关,我只是使用那里的软件。