调试服务
-
在调试配置中生成你的服务。
-
-
-
使用管理凭据启动 Visual Studio,那么你就能附加到系统进程。
-
在“选项”对话框中,选择“调试”、“符号”,选择“Microsoft 符号服务器”复选框,然后选择“确定”按钮 。
-
(键盘:Ctrl+Alt+P)
这将显示“进程” 对话框。
-
选择“显示所有用户的进程”复选框 。
-
在“可用进程” 部分,为服务选择进程,然后选择“附加” 。
提示
该进程的名称将与你的服务的可执行文件相同。
出现 “附加到进程” 对话框。
-
选择相应的选项,然后选择“确定” 以关闭对话框。
备注
你现在处于调试模式。
-
设置任意你想要在代码中使用的断点。
-
疑难解答:调试 Windows 服务。
Windows 服务的调试提示
临时服务启动进程后,可以使用 Visual Studio 中的 “调试”菜单来附加到服务进程。
Sleep 方法的调用延迟操作,直到你能够附加到该进程。
为此,请按如下所示重写 Main 方法,这样它可以作为 Windows 服务和控制台应用程序运行,具体取决于启动方式。
如何:将 Windows 服务作为控制台应用运行
-
OnStop 方法的服务添加一个方法:
复制internal void TestStartupAndStop(string[] args) { this.OnStart(args); Console.ReadLine(); this.OnStop(); } -
按如下所示重写
Main方法:复制static void Main(string[] args) { if (Environment.UserInteractive) { MyNewService service1 = new MyNewService(args); service1.TestStartupAndStop(args); } else { // Put the body of your old Main method here. } } -
在项目属性的“应用程序” 选项卡中,将“输出类型” 设置为“控制台应用程序” 。
-
选择“启动调试” (F5)。
-
不必恢复这些更改。
如何调试 Windows 服务。