无法找到指定的模块0x8007007E

ins*_*pid 22 .net c# c++ windows visual-studio

当我逐步执行代码时,在Form的构造函数内部,调用以相同形式声明的方法.在我可以进入该方法之前,我得到一个System.IO.FileNotFoundException,并显示消息"无法找到指定的模块.(HRESULT异常:0x8007007E)".我尝试输入的成员方法被声明为不安全,因为它处理非托管C++代码,但就像我说的那样我永远不会进入该方法.

因为它听起来像DLL依赖问题,所以我运行了Dependency Walker.依赖性walker仅在SHLWAPI.DLL下显示MPR.DLL的问题.问题方法是WNetRestoreConnectionA,我从不打电话.依赖性walker FAQ表明这不是问题http://dependencywalker.com/faq.html.此外,这不是一个Web应用程序或任何东西.不幸的是我被VS2005困住了.

出现此问题的可能原因是什么?关于我可能缺少什么或如何调试此问题的任何想法?

Sam*_*der 16

您是在分析模式中运行依赖步行器,还是只运行静态分析?我认为,分析模式是您需要的.但我相信有更好的解决方案.

你可以试试SysInternals ProcMon.这将允许您查看它至少尝试加载的文件,并从那里您可以找出问题所在.

我的建议是将其启动,然后关闭日志记录.到达异常即将发生的位置,重新启用日志记录,在调试器中跳过,以便生成错误,然后再次禁用日志记录.这将只留下少量的日志来处理,否则它会很快变得非常笨拙.

  • 我在博客上写过使用ProcessMonitor来解决混合模式汇编依赖问题http://www.sivachandran.in/2013/03/troubleshooting-module-could-not-be.html,我希望它有所帮助. (5认同)

SLa*_*aks 15

当.Net运行时JIT处理您即将进入的方法时发生错误,因为它找不到该方法使用的类型之一.

你不能介入的方法究竟是什么,以及它使用的是什么类型/方法?