Estoy creando un Servicio de Windows donde cada cierto tiempo reviso los registros que hay en una Base de Datos SQL, la consulta T-SQL me devuelve entre otras cosas el Path de un archivo, el cual debo ejecutar cuando una Hora (tambien devuelta en la consulta) sea igual a la actual.
Ahora el problema que tengo es que no me sale la validacion de la hora...por ejemplo:
La hora guardada en la Base de Datos viene con el formato:"hh:mm:ss", y la tengo que validar entonces con la hora actual, pero si el evento ELAPSED se ejecuto antes o despues de la hora guardada en la DB, pues esto me va a fallar, he intentando varias validaciones pero ninguna me resuelve.
Abajo esta el codigo en cuestion:
Código:
Espero me puedan ayudar...Dim t1 as New Timer Protected Overrides Sub OnStart(ByVal args() As String) t1.Interval = 200000 t1.Enabled = True End Sub Private Sub t1_Elapsed(ByVal sender As Object, ByVal e As System.Timers.ElapsedEventArgs) Handles t1.Elapsed Dim selectCmd As String = "SELECT FilePath, FileDate FROM Calendar" Dim sqlcmd As New SqlCommand(selectCmd, sqlCn) Dim sqlrdr As SqlDataReader = sqlcmd.ExecuteReader Dim fPath As String = "" Dim fTime As String = "" Try sqlCn.Open() Do While sqlrdr.Read fPath = sqlrdr.GetString(0) fTime = sqlrdr.GetString(1) If fTime <= Date.Now.ToLongTimeString.ToString Then Process.Start(fPath) End If Loop sqlrdr.Close() Catch ex As ArgumentException Throw New Exception(ex.Message) Catch ex As SqlException Throw New Exception(ex.Message) Catch ex As Exception Throw New Exception(ex.Message) Finally sqlCn.Close() End Try End Sub Protected Overrides Sub OnStop() t1.Stop() End Sub End Class
Att
SolSeek.