use warnings; use Win32::GUI(); use Win32::Sound; # Update interval in seconds $interval = 30; # current time $now = time; #if the file exists, get it's properties if ( -f "log2.txt") { $lastUpdate = (stat("log2.txt"))[9]; $difference = $now - $lastUpdate; } while ($difference > $interval) { $filename="log2.txt"; open(TXT, $filename)||die("Could not open file!"); @filedata = ; close(TXT); @alert = qw(a b c); $i=0; $datetime = localtime(); $alert = new Win32::GUI::Window( -left => 341, -top => 218, -width => 500, -height => 200, -name => "alert", -text => "alert window" ); $font = Win32::GUI::Font -> new( -name => "Arial", size => 46, -bold => 1); $alert[$i] -> AddLabel( -text => $datetime, -font => $font); $alert[$i] -> AddLabel( -text => $element, -font => $font, -top => 50); $alert->AddButton( -text => "OK", -name => "CloseButton", -left => 200, -top => 100, ); Win32::Sound::Play("SystemExclamation"); $alert[$i] -> Show(); Win32::GUI::Dialog(); ++$i; sub CloseButton_Click { $alert[$i] -> Hide(); } sub Alert_Terminate{ -1; } foreach ($element =~ /(\s+)(\d{1,4})(\.\d{1,4}){3}(\s+)/) {&show_win } }