可以通过启动服务并将调试器附加到服务进程来调试 Windows 服务。 有关详细信息,请参阅 如何:调试 Windows 服务应用程序。 但是,若要调试 System.ServiceProcess.ServiceBase.OnStart Windows 服务的方法,必须从方法内部启动调试器。
在 Launch方法的开头添加对 OnStart() 的调用。
protected override void OnStart(string[] args)
{
System.Diagnostics.Debugger.Launch();
}
启动服务(可以使用 net start,或在 “服务” 窗口中启动该服务)。
应会看到如下所示的对话框:
选择 “是”,调试 <服务名称>。
在“Just-In-Time 调试器”窗口中,选择您想用于调试的 Visual Studio 版本。
在 Visual Studio 的一个新实例启动后,执行在方法 Debugger.Launch() 处停止。
相关内容
调试器安全性
调试托管代码