Il servizio è stato installato tra i servizi di windows? Quando lo fai partire ti riferisci alla console dei servizi di windows oppure a visual studio?
Intanto ti giro due righe di codice su come fare un servizio che parta ad una determinata ora, giusto per darti un'idea:
Public Class MioServizio
Private TimerTask As System.Timers.Timer = Nothing
Private _LastRun as Datetime = DateTime.MinValue
Public Sub New()
' This call is required by the Windows Form Designer.
InitializeComponent()
End Sub
Protected Overrides Sub OnStart(ByVal args() As String)
TimerTask = New System.Timers.Timer()
TimerTask.Interval = 60000 'Intervallo in millisencondi, quindi equivale ad 1 minuto
AddHandler TimerTask.Elapsed, AddressOf TimerTask_Elapsed
'Avvia timer
TimerTask.Start()
' ---------- FINE TIMER ---------------
End Sub
''' <summary>
''' Intercettato evento del timer
''' </summary>
Private Sub TimerTask_Elapsed(ByVal sender As Object, ByVal e As Timers.ElapsedEventArgs)
TimerTask.Stop()
Try
' Esecuzione alle ore 10
if DateTime.Now.Hour = 10 AndAlso _LastRun.Date <> DateTime.Now.Date Then
_LastRun = DateTime.Now
'Esegue operazioni del servizio
RunTasks()
End IF
Catch ex As Exception
'Scrivo dati in un log
Finally
TimerTask.Start()
End Try
End Sub
''' <summary>
''' Esegue i task programmati
''' </summary>
Private Sub RunTasks()
'Qui puoi inserire il codice che dovrà gestire il tuo servizio
End Sub
Protected Overrides Sub OnStop()
'Stoppa timer
TimerTask.Stop()
End Sub
End Class
-----------------------------------------
Rossi Marco
http://blogs.dotnethell.it/rossimarko