$ENV{'TZ'} = '-0400'; # also tried 'US/Eastern' with same result. print qq{---- $ENV{'COUNT'} ---- TZ: $ENV{'TZ'} localtime: } . scalar(localtime) . "\n"; $ENV{'COUNT'}++; exit if $ENV{'COUNT'} > 3; system("C:\\perl\\bin\\perl.exe C:\\cgi\\test"); #### C:\FootPrints1\cgi>C:\perl\bin\perl.exe C:\cgi\test ---- ---- TZ: -0400 localtime: Thu Sep 6 10:46:07 2007 ---- 1 ---- TZ: -0400 localtime: Thu Sep 6 14:46:07 2007 ---- 2 ---- TZ: -0400 localtime: Thu Sep 6 14:46:07 2007 ---- 3 ---- TZ: -0400 localtime: Thu Sep 6 14:46:07 2007 #### use POSIX(); POSIX::tzset();