将Visual Studio附加到一个短暂的过程

Ste*_*ers 4 .net-4.0 attach-to-process visual-studio-2012 windows-server-2012

我有一个控制台应用程序,它很快就会死掉,并且在检查代码后,我无法确切知道死掉的位置(我基本上将其缩小到10行半径),以便进一步调试它。

由于我不愿讨论的原因,我无法从VS执行该过程(尽管我具有二进制文件,源代码和pdbs,但是我无法在构建服务器的环境之外进行构建),并且想要附加到流程...但是当我开始流程时,它死的时间比我希望刷新“ 附加到流程”对话框的时间要早得多。

有想法吗?

Mar*_*ins 5

这样做的一种可能性是使用任何现有的Visual Studio项目并将该应用程序指定为要调试的应用程序。这些步骤(在Visual Studio 2010中)为:

  • 转到项目属性。
  • 选择调试(在配置属性下)
  • 编辑命令并填写二进制文件的路径

然后应该仅可以开始调试(例如F5或Debug \ Start Debugging)。

如果您安装了调试工具,另一个可能更快的选择是使用WinDbg.exe。这样可以避免使用Visual Studio项目。您可以打开可执行文件,指定命令行参数等,然后g<ret>在命令行中键入以启动它。