DateTime::TimeZone::Local::Win32(3) User Contributed Perl Documentation DateTime::TimeZone::Local::Win32(3)NAME
DateTime::TimeZone::Local::Win32 - Determine the local system's time zone on Windows
VERSION
version 1.63
SYNOPSIS
my $tz = DateTime::TimeZone->new( name => 'local' );
my $tz = DateTime::TimeZone::Local->TimeZone();
DESCRIPTION
This module provides methods for determining the local time zone on a Windows platform.
HOW THE TIME ZONE IS DETERMINED
This class tries the following methods of determining the local time zone:
o $ENV{TZ}
It checks $ENV{TZ} for a valid time zone name.
o Windows Registry
When using the registry, we look for the Windows time zone and use a mapping to translate this to an Olson time zone name.
o Windows Vista and 2008
We look in "SYSTEM/CurrentControlSet/Control/TimeZoneInformation/" for a node named "/TimeZoneKeyName". If this exists, we use
this key to look up the Olson time zone name in our mapping.
o Windows NT, Windows 2000, Windows XP, Windows 2003 Server
We look in "SOFTWARE/Microsoft/Windows NT/CurrentVersion/Time Zones/" and loop through all of its sub keys.
For each sub key, we compare the value of the key with "/Std" appended to the end to the value of
"SYSTEM/CurrentControlSet/Control/TimeZoneInformation/StandardName". This gives us the English name of the Windows time zone,
which we use to look up the Olson time zone name.
o Windows 95, Windows 98, Windows Millenium Edition
The algorithm is the same as for NT, but we loop through the sub keys of "SOFTWARE/Microsoft/Windows/CurrentVersion/Time
Zones/"
AUTHOR
Dave Rolsky <autarch@urth.org>
COPYRIGHT AND LICENSE
This software is copyright (c) 2013 by Dave Rolsky.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
perl v5.18.2 2013-10-28 DateTime::TimeZone::Local::Win32(3)