我正在开发一个使用Visual Studio 2015,Qt 5.5和OpenCV3.0的64位C++应用程序。该应用程序在用于在Release和Debug版本中开发的电脑上运行良好。但是,同样的应用程序仅在调试上的其他电脑上运行,并在发行版本我收到此错误信息:加载dll时有没有办法调试发布版本?
The application was unable to start correctly 0xc0000005, Click Ok toclose the application:
我创建转储文件使用Visual Studio调试器中打开它,它表明在加载opencv_imgproc300.dll之前加载dll时,应用程序会停止。
我试着回顾一下事件查看器,但是我没有在那里发现这个错误。
有没有一种方法来调试启动时发布版本加载DLL时知道哪个问题的原因?
最简单的第一步将是在目标电脑上运行的Dependency Walker和它http://www.dependencywalker.com/打开你的EXE – stijn
您可以尝试使用的ProcessMonitor从Sysinternals的套房。没有保证,但它可能会显示一些有用的东西(它肯定会显示很多)。 –
我从sysinternals试过这个:https://technet.microsoft.com/en-us/sysinternals/bb963902.aspx。但它不会显示丢失或损坏的dll。对于dependencywalker,我更好地使用Visual Studio Debugger中的Module窗口,它显示了所有加载的dll和加载顺序,我发现它更有帮助。 – ProEns08