Just a bit of advice about timers.
I have an event I want to fire aprox every minute, so have put this on an a windows.form timer with an interval of 60000.

I then have other events I want to fire at specific times, so I put this on a System.Timers.Timer with the SynchronizingObject set to none.

I then fire the events at the correct times like so

VB Code:
  1. curmin = Minute(Now())
  2.         If curmin = 0 Then
  3.             curhour = Hour(Now())
  4.             If curhour = 0 Then
  5.                 curday = Weekday(Now())
  6.             End If
  7.         End If
  8.  
  9.  Select Case curhour
  10.             Case 8
  11.  
  12.                 If curmin = 1 Then
  13.                     deloldmes()
  14.                 End If
  15.  
  16.                 If curmin = 21 Then
  17.                     gettftp(1)
  18.                 End If
  19.  
  20.                 If curmin = 56 Then
  21.                     getttp(2)
  22.                 End If
  23.  
  24.  
  25.             Case 9
  26.                 If curmin = 1 Then
  27.                     getmonmes()
  28.                     deloldmes()
  29.                 End If
  30.             Case 10
  31. .
  32. .
  33. .
  34. end select

I assume I have to be careful because in theory the two timers could fire at the same time so access the same procedures. Is this the only thing I need worry about and is this the correct way of doing what I'm doing?

Cheers