如何使用pdb调试现有C ++可执行文件但没有源代码

时间:2011-08-15 13:21:07

标签: c++ visual-studio debugging

我在已编译(在调试模式下)C ++项目中工作。我有它的exe文件和pdb文件。 我可以从命令行运行exe。

如何调试项目? (我没有.sln文件。)

我在Visual Studio工作,但我在系统中也有一个cygwin。

4 个答案:

答案 0 :(得分:7)

以与打开项目或解决方案相同的方式从Visual Studio 打开可执行文件。这将允许您调试它。

(它在您的exe周围创建一个空的占位符解决方案,您可以在运行exe来调试它时使用它来更改环境变量或命令行参数。)

答案 1 :(得分:4)

启动Visual Studio命令提示符,然后运行以下命令:

devenv /debugexe yourapp.exe

它必须等同于在Visual Studio中打开可执行文件,就像Macke在他的回答中所建议的那样。

然后您可以按,例如F10,调试器在应用程序执行开始时停止,或者像往常一样设置断点等等。

答案 2 :(得分:0)

您可以使用WinDbg进行调试 您可以将Windbg指向源或坚持反汇编,但PDB文件至少包含调用方法的名称,您可以看到可读的堆栈跟踪。

答案 3 :(得分:0)

您也可以调试已在运行的进程。只需从命令行启动程序,然后使用visual Studio附加到它(工具 - >附加到进程)。