我想創建和管理Windows服務應用程序,而不需要Visual Studio設計人員的「幫助」。沒有Visual Studio干擾的Windows服務
由於這是.NET和MSDN通過判斷和設計師做什麼,這意味着從Installer
繼承,並構建和處理ServiceProcessInstaller
和ServiceInstaller
要能管理中的service的安裝時執行。
運行時,這意味着在創建子類ServiceBase
並使用ServiceBase.Run
(和壓倒一切的各種ServiceBase
事件處理方法)從Main
啓動它。
但是,當我這樣做時,Visual Studio堅持將Installer
和ServiceBase
子類視爲設計者編輯的文件。這並不完全有助於可讀性,更不用說它通常無法處理手寫代碼的事實。 我想避免設計師保持可管理性(以避免模糊的誰知道什麼運行時,特別是對於難以測試和調試的代碼,例如windows服務,所有必須必須安裝到完全可以運行),並且還能夠在運行時指定服務名稱,而不是在編譯時 - 設計人員不支持這一點。
如何創建一個沒有所有垃圾的Windows服務應用程序?
你可能想看看TopShelf項目 - http://topshelf-project.com/ – stuartd 2011-02-09 15:48:58
嗯 - 整齊!看起來有點矯枉過正,還不夠成熟,但如果我要寫一個新的應用程序,我一定會考慮它。 – 2011-02-10 13:59:32