io la farei molto più semplice...

mi creerei un'impostazione DataFaiQualcosa nelle impostazioni del programma di tipo Date e scriverei questo:

codice:
Public Class Form1
    Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        Timer1.Stop()
        If VerificaData("ss") = True Then 'verifico se la data archiviata è diversa da quella di oggi
            My.Settings.DataFaiQualcosa = Now
            My.Settings.Save()
            'Fai Qualcosa
        Else
            'Fai Qualcos'altro
        End If
        Timer1.Start()
    End Sub

    Function VerificaData(ByVal Controllo As String) As Boolean
        Dim DtDiff As TimeSpan
        If My.Settings.DataFaiQualcosa = #12:00:00 AM# Then Return True
        DtDiff = Now.Subtract(My.Settings.DataFaiQualcosa)
        Select Case Controllo.ToLower
            Case "gg" 'giorni
                If DtDiff.Days > 0 Then Return True
            Case "hh" 'ore
                If DtDiff.Hours > 0 Then Return True
            Case "mm" 'minuti
                If DtDiff.Minutes > 0 Then Return True
            Case "ss" 'secondi
                If DtDiff.Seconds > 0 Then Return True
        End Select
        Return False
    End Function

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Timer1.Interval = 5000
        Timer1.Start()
    End Sub
End Class
così eviti di scrivere file inutili su disco..

provalo...