我昨晚离开了一个程序,它工作了大约5个小时,然后其中一个内置的自我诊断测试检测到一个问题并提出了一个对话框告诉我这个问题。该程序是使用调试信息(/ Zi)构建的。是否有可能以某种方式启动调试器,以便我可以检查程序中某些变量的值?或者为时已晚?
答案 0 :(得分:3)
您可以将调试器附加到正在运行的进程:
调试>附加到流程...
首先打开程序的解决方案。
假设您仍然在屏幕上显示错误对话框,您可以进入程序并恢复调用堆栈检查变量等。
答案 1 :(得分:2)
对于将来的崩溃...如果你有windbg
或Visual Studio Professional,你可以调试崩溃转储,即使程序没有运行。它有时非常有用。有关详细信息,请参阅MSDN上的“MiniDumpWriteDump”。
除此之外,它是“附加到流程”。
Visual Studio的专业版具有即时调试程序,即使MSVC未运行,也会在任何崩溃时立即启动。它还将找到源代码(如果调试信息和源代码可用)并为您打开/创建解决方案。
答案 2 :(得分:1)
“调试”菜单中有一个选项可将调试器附加到正在运行的进程IIRC。