2010-07-30 86 views
2

我已經編寫了一個安裝在我的PC上的Windows服務應用程序。它有一個問題,所以我想調試該服務。如何調試Windows服務

你能告訴我如何調試Windows服務?

+0

這個問題已經問了很多次。請在提問前進行搜索。 – leppie 2010-07-30 07:02:05

回答

1

調試代碼最簡單的方式,你已經寫在.NET服務是從服務的所有功能代碼中分離到一個單獨的組件,然後創建另一個項目,如一個控制檯或使用獨立程序集運行服務代碼的WinForms應用程序。

+0

+1我不得不這樣做一次,而且我發現這樣做更方便,更不用說你得到的代碼封裝的副作用了。 – 7wp 2010-07-30 07:08:12

+0

+ Roberto - yeup,我一直認爲它比嘗試調試服務過程更好,尤其是考慮到您獲得的副作用=) – Rob 2010-07-30 07:31:40

+0

如果您使用[TopShelf](http:// topshelf -project.com/)庫,那麼你可以免費獲得這個副作用。您可以將控制檯應用程序作爲控制檯應用程序或作爲服務運行。 – 2015-05-21 08:17:29

0

如果您在同一臺機器上安裝了Visual Studio,請使用它列出進程並將調試器附加到該進程上。您也可以使用遠程調試,但配置很麻煩。

0

最簡單的方法是將System.Diagnostics.Debugger.Launch()添加到您想要開始調試的點。 Visual Studio將需要以管理員身份運行。當代碼執行時,會彈出一個對話框,詢問您想用哪個Visual Studio實例進行調試。如果你已經打開Visual Studio並加載了相關的項目,請選擇那個項目。