Hi there :) Ok, the timers seems fine now, next prob is this: I want the program to email only if the file contains new "errors" but NOT to email if there are no new instances of the "error" word. so i wrapped the mail code in if sline <> "" then ... (mail code)...end if and it doesnt seem to mail at all now (i added errors manually to the file to check it). Could u pls tell me where im going wrong? Thanx! Imports System Imports System.IO Imports System.Collections Imports System.Web Module Module1 Sub Main() Dim myTimer As New System.Timers.Timer Dim LineNo As String myTimer.Stop() Dim CurrentLineNo As New Integer If GetSetting("OrEM", "Settings", "LineNo") = "" Then SaveSetting("OrEM", "Settings", "LineNo", "1") End If LineNo = Val(GetSetting("OrEM", "Settings", "LineNo")) Dim objReader As New StreamReader("filename") Dim sLine As String = "" Dim arrText As New ArrayList Do sLine = objReader.ReadLine() : CurrentLineNo = CurrentLineNo + 1 If CurrentLineNo >= LineNo Then If InStr(UCase(sLine), "MON") Or InStr(UCase(sLine), "TUE") Or InStr(UCase(sLine), "WED") Or InStr(UCase(sLine), "THU") Or InStr(UCase(sLine), "FRI") Or InStr(UCase(sLine), "SAT") Or InStr(UCase(sLine), "SAT") Then sLine = objReader.ReadLine() : CurrentLineNo = CurrentLineNo + 1 If InStr(UCase(sLine), "ERROR") Then arrText.Add(sLine) While sLine <> "" sLine = objReader.ReadLine() : CurrentLineNo = CurrentLineNo + 1 End While End If End If If Not sLine Is Nothing Then End If Loop Until sLine Is Nothing objReader.Close() If sLine <> "" Then 'create mail notification Dim mailMsg As New System.Web.Mail.MailMessage mailMsg.BodyFormat = Mail.MailFormat.Text mailMsg.To = "me@co.uk" mailMsg.Subject = "name" mailMsg.From = "name" Dim txtBody As String For Each sLine In arrText txtBody = txtBody & sLine & vbCrLf Next mailMsg.Body = txtBody System.Web.Mail.SmtpMail.SmtpServer = "server" System.Web.Mail.SmtpMail.Send(mailMsg) End If SaveSetting("OrEm", "Settings", "LineNo", Trim(Str(CurrentLineNo