如何将Visual Studio调试器附加到托管类型进程?

时间:2012-05-18 08:38:20

标签: visual-studio-2010 debugging windows-services

我一直在关注this guide来调试Windows服务应用程序。

基本上,我需要将Visual Studio调试器附加到安装已开发的Windows服务后启动的进程。但是,VS不允许我将调试器附加到此过程,如下图所示:

enter image description here

如何将调试器附加到此过程?如果我点击任何其他进程,则“附加”按钮将变为启用状态。

非常感谢任何帮助

3 个答案:

答案 0 :(得分:3)

选中Show processes from all users复选框,然后您会看到AutomatedReports.exe。附上(不是AutomatedReports.vshost.exe

vshost是帮助调试的主机进程。有关此MSDN Link

的更多信息

此外,您还需要在要修改断点的服务代码中放置以下行。

System.Diagnostics.Debugger.Break();

答案 1 :(得分:2)

该服务可能在单独的用户帐户上运行。选中“显示所有用户的进程”复选框,并将调试程序附加到AutomatedReports.exe进程。

另外,请确保您正在运行该服务的Debug版本,否则您将无法进行大量调试。

答案 2 :(得分:1)

您是否尝试更改正在调试的代码类型?

点击“选择...”

选择“调试这些代码类型”

然后,您可以选择类型:“托管(v4.0 ...)”