我有一个已经运行的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