∗Windows Service服務的調試∗
• 寫日志調試
要在可能出現錯誤的地方都要做寫入日志處理,并且多用Try…Catch來捕獲錯誤。
• 附加到程序
這種調試方式可以直接進入斷點,比較直覺,隻需要操作2~3步就可以,但是要求服務必須能成功開啟才能附加到程序調試。
步驟如下:
1.首先編譯好服務,在合适的地方加上斷點
2.啟動(或者重新開機)服務,用bat或者指令行都可以
3.VS2005中“調試 –> 附加到程序”選擇對應的服務程序并添加(速度要快,接着就可以進入斷點啦)
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiI0NXYFhGd192UvwVe0lmdhJ3ZvwFM38CXlZHbvN3cpR2Lc1TPB10QGtWUCpEMJ9CXsxWam9CXwADNvwVZ6l2c052bm9CXUJDT1wkNhVzLcRnbvZ2LcZXUYpVd1kmYr50MZV3YyI2cKJDT29GRjBjUIF2LcRHelR3LcJzLctmch1mclRXY39jMzADMwADN0ETNykDM1EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
• 修改主函數直接進入斷點
在Program.cs的Main函數中,注釋掉自動生成的代碼,添加以下兩行:
TeamWorldService obj = new TeamWorldService();
obj.OnStart();
然後把protected override void OnStart(string[] args) 改為 public void OnStart()。
最後設定斷點,按F5運作就可以直接進入調試了。