每次我尝试设置远程调试时,它总是会带来痛苦。为了在远程机器上调试我的 MFC 应用程序,我需要做什么?我使用的是 Windows 7,虚拟机使用的是 Windows XP。
我在远程计算机上运行了 msvsmon,并且已成功连接,但我遇到的问题是 VM 无法启动我的调试 exe,因为它显示:
This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem (14001).
我已经安装了 VC Runtime Redist,我已经将 MFC/CRT 非 redist 调试文件复制到 VM 上(并复制到与程序相同的目录中)。我尝试按照这篇博文 - http://qualapps.blogspot.com/2008/07/visual-studio-2008-c-redistributable.html 中的编辑 list 文件版本信息的建议进行操作。 .但似乎没有什么能够让它发挥作用。
我使用 Dependancy Walker 检查了 MyAppD.exe,它给了我同样的错误(关于并排程序集加上上面的文本)。
有没有人有一个万无一失的方法来让这些东西工作(在干净的虚拟机上)?
最佳答案
问题可能是您使用的是应用程序的调试版本,但您安装的是发布版 C++ 运行时。您实际上需要在远程计算机上安装调试 C++ 运行时才能在其上运行调试应用程序。
自 MSVC 2005 以来,C++ 运行时一直是并排程序集,这使得它们的安装比以前稍微复杂一些(当时您可以只复制 msvcrt71d.dll 等)。我写了一篇关于几年前(2005 年)设置它的经验的博客文章,我相信同样的原则仍然适用。
http://www.stevestreeting.com/2007/10/25/remote-debugging-tips/
希望对您有所帮助。
关于c++ - 如何设置 native 远程调试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4247501/