DateTime::TimeZone::Local::Win32(3pm)

NAME

DateTime::TimeZone::Local::Win32 - Determine the local system's time
zone on Windows

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 & LICENSE

Copyright (c) 2003-2008 David Rolsky. All rights reserved. This
program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.

The full text of the license can be found in the LICENSE file included with this module.
Copyright © 2010-2025 Platon Technologies, s.r.o.           Index | Man stránky | tLDP | Dokumenty | Utilitky | O projekte
Design by styleshout