Windows Service的安裝,卸載,啓動以及調試.

refer: http://blog.csdn.net/march1111/archive/2006/08/31/1151648.aspx

 

    近段時間在做C#的項目,使用到了Windows Service.項目包括一個Windows Service工程,一個具體的業務處理工程(dll)
以及一個安裝工程.現就這幾天的使用心得做一下說明.
    1.Windows Service程序與一般程序的區別。
 Windows Service程序不能等同於一般的程序,直接調試或者運行是不起作用的。
    2.Windows Service程序的安裝,卸載和啓動。
        要想運行一個Windows Service程序,首先必須將這個服務程序安裝到Windows服務中去。如何安裝,卸載和啓動Windows Service程序呢?最常用的有2種方式。
 方式一就是使用framwork自帶的InstallUtil命令以及net start命令。
  1) 安裝Service: InstallUtil testService.exe
  2) 卸載Service: InstallUtil /u testService.exe
  3) 啓動Service: net start "服務名稱"(當然最簡單的就是手動啓動了^_^)
 方式二就是做一個安裝工程。
 方式二的最大好處就是通過相關設定,安裝完服務後立馬註冊Windows Service程序到Windows服務中去,下面我們就
 詳細說明一下,如何實現這種處理方式。
  1) 爲你的Windows Service工程(假設爲:testService)添加一個安裝工程(假設爲:testServiceSetup)。
  2) 右鍵點擊創建的安裝工程(testServiceSetup)選擇"追加"-->"項目輸出",在"添加項目輸出組"對話框中選擇"主輸出",
     在"項目"下拉框中選擇需要主輸出的服務程序即testService。
  3) 右鍵點擊創建的安裝工程(testServiceSetup)選擇"視圖"-->"自定義操作",右鍵點擊"自定義操作"添加"自定義操作",
     選擇應用程序文件夾中的主輸出程序testService,此時在以下4個節點(安裝,提交,回滾,卸載)中都添加了主輸出程序testService。
  4) 編譯安裝。
 安裝完畢後你創建的服務已經添加到Windows服務中去了。
    3.Windows Service調試。
 啓動Visual Studio,打開你的testService project.選擇菜單"調試->進程"。在進程窗口裏附加你的服務程序testService.exe。如果你看不到你的
 testService.exe,請選中"顯示所有會話中的進程".這樣你才能看到以system賬號運行的Service. 如果你已經設置了斷點,當Serice運行到你設置的
 斷點時,程序就會停下來等待你的調試。(說明:只有Debug模式下編譯的testService.exe纔可以進行調試)
    4.Onstart()的調試。
 1) 在方法Onstare()裏設置System.Timers.Timer,然後用Timer來延遲啓動服務。延遲的時間由你進入調試狀態的時間來決定。可以設置爲5秒。
    當然服務啓動後應停止Timer(設置Timer.Enable=false).
 2) 參見前一篇blog(Debugging the OnStart Method)。 

發佈了298 篇原創文章 · 獲贊 4 · 訪問量 178萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章