title: VB.NET Timer question
body: <p>I wrote a VB.NET Windows Service, which works fine. I have only one issue with it. I want the service to execute on the half hour and top of the hour marks (e.g. 9:00, 9:30, 10:00, 10:30, 11:00, etc etc etc). I am using the following code:</p>
  
  <pre><code>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.
      Dim oCallBack As New TimerCallback(AddressOf TimedEvent)
      oTimer = New System.Threading.Timer(oCallBack, Nothing, 300000, 300000)
      EventLog.WriteEntry("CCFinalizeService has begun successfully." , _
                          System.Diagnostics.EventLogEntryType.Information)
  
  End Sub
  </code></pre>
  
  <p>This code works, however, if the service starts at, say, 10:15, then it executes at 10:15, 10:45, 11:15, 11:45. How do I make it so it always executes on the 30 minute and top of the hour marks?</p>