#!/usr/bin/perl -w use strict; use warnings; use IO::Socket; use Tk; my $splash; my $picfile = "clock.bmp"; if(defined($PerlApp::VERSION)) { $picfile = PerlApp::extract_bound_file($picfile); } require Tk::Splash; $splash = Tk::Splash->Show($picfile, 100, 100, "PerlMonks Time Sync", undef); for(1..5) { DoOneEvent(); } my $socket = IO::Socket::INET->new(PeerAddr => "127.0.0.1", PeerPort => 64100, Proto => "tcp", Type => SOCK_STREAM); die("Can't open connection to time server!") if(!$socket); foreach my $line (<$socket>) { if($line =~ /(\d\d-\d\d-\d\d\d\d)\ (\d\d\:\d\d\:\d\d)/) { my ($dstamp, $tstamp) = ($1, $2); sleep(1); system("cmd.exe /c date $dstamp"); system("cmd.exe /c time $tstamp"); last; } } $splash->Destroy;