2013-06-01 70 views
1

我即將開始構建另一個Windows服務,但是我從過去的這種做法知道,因爲需要使用命令行來安裝服務,所以它使得構建起來並沒有多少樂趣。有沒有辦法設置我的環境,以便在構建之後,它會自動重新註冊該服務? (作爲一個方面說明:我知道你可以在構建之後運行命令行的東西,但只有在服務未註冊 - 如果服務仍在運行時才能構建)。那麼,幫助?設置dev-env構建Windows服務的最佳方式是什麼?

+0

自定義的MSBuild並添加任務執行適當的命令 - 線的東西。 – Nenad

+2

您是否知道可以在調試器中將Windows服務作爲控制檯應用程序運行? [參考文獻](http://stackoverflow.com/questions/13618277/logic-for-windows-services-getting-updates/13618744#13618744)。這仍然會導致運行該服務的帳戶出現問題,但它確實有助於開發。 – HABO

+0

我認爲這兩個編輯框都可以輸入預構建命令,而後構建命令在同一頁面上並且大小相同......檢查是否可以在解決方案屬性的「構建事件」中使用「預構建事件命令行」 「 標籤。 –

回答

2

尋找Topshelf項目,它爲我簡化了與Windows服務的工作。 您也可以在命令行中運行您的服務,無需一直註冊。 只需閱讀文檔,也許您會找到適合您需求的解決方案。

http://topshelf-project.com
http://docs.topshelf-project.com/en/latest/configuration/quickstart.html

我有我要的webapp之前啓動兩個服務。對於開發,我有兩個控制檯項目與Topshelf代碼,所以我使用多個啓動項目,他們都開始之前的Web應用程序。

對於部署,我只取控制檯exe文件並運行安裝命令安裝它作爲正常的服務,無需創建單獨的Windows服務項目,等

相關問題