2011-12-09 141 views
1

我遇到安裝後沒有自動重啓的服務問題。Windows服務不能自動啓動

我通過執行創建服務:

sc create MyService binPath= "C:\path to service\MyService.exe" start= auto 

重新啓動後,該服務沒有自動啓動。
但是,如果我執行:

sc create MyService binPath= "C:\path to service\MyService.exe" start= auto 
net start MyService 
net stop MyService 

並重新啓動...服務啓動...(同樣的結果,如果不執行net stop MyService

爲什麼net start ...已被至少一次sc create後調用爲服務自動啓動?
該服務必須開始後,下一次重新啓動,因此呼籲net start不是我的選擇

+0

你檢查日誌嗎?可能會有錯誤。 – legiero

+0

不,沒有錯誤... –

回答

1

我有一個類似的問題,但只是使用ServiceContro ller類在安裝完成後自動啓動。我的服務只是在安裝後沒有直接啓動(再次沒有錯誤),但是在用戶登錄或重新啓動服務後運行正常並且沒有問題。

0

使用serviceController類來安裝完成後自動啓動完成對我也工作,但我有一個與Windows服務沒有自動啓動的另一個問題。在這種情況下,問題在於服務失敗了,因爲它試圖在SQL服務啓動之前建立SQL連接。

使用Thread.Sleep方法延遲了我的Windows服務中解決此問題的時間,所以總是值得檢查服務依賴關係。