我有一個已經運行的Windows服務。我創建了一個新版本的應用程序。我去了Windows服務器並停止了服務。然後我複製了新的服務的.exe文件並嘗試啓動該服務。該服務不會啓動,它試圖開始超時,我不知道爲什麼。我確信我之前已經做到了這一點。我需要卸載服務並重新安裝嗎?新的Windows服務應用程序版本不會啓動
服務器:Windows Server 2003 R2的 應用.NET版本:2.0 開發了:VS 2005 語言VB.NET
OnStart方法:
Protected Overrides Sub OnStart(ByVal args() As String)
' Add code here to start your service. This method should set things
' in motion so your service can do its work.
Me.Timer1.Enabled = True
End Sub
的InitializeComponent: CHECKDB_INTERVAL_TIME = 10
Private Sub InitializeComponent()
Dim iWaitTime As Int16
iWaitTime = CType(ConfigurationManager.AppSettings("CHECKDB_INTERVAL_TIME"), Int16)
Me.components = New System.ComponentModel.Container
Me.Timer1 = New System.Timers.Timer()
Me.Timer1.Interval = iWaitTime * 60000
'
'HarleyCloser
'
Me.ServiceName = "MyService"
End Sub
Friend WithEvents Timer1 As System.Timers.Timer
我發現了這個問題。問題出在一個指令被用來在調試模式和釋放模式下做一些不同的事情。
事件查看器中的任何錯誤消息? – iandotkelly
*事件查看器*中的*應用程序日誌*說什麼? – jgauffin
如果事件查看器什麼都沒說,我發現有一件事很有幫助,就是在調試時將事件日誌條目或消息添加到數據庫 - 例如「關於調用DoSomeWork ...」和「DoSomeWork Completed」等。特別是在包含可能需要一些時間才能完成的過程的循環中。這真是我想通過簡單的方式調試服務應用程序的唯一方法。它可以讓你看到代碼中的服務掛起或比預期更長的時間。 – David