Grystmill Unofficial Time Zones Update
2007 Gary S. Terhune, MS-MVP

Overview   Discussion   Updates   Unofficial Updates   Languages   Instructions   Downloads

OVERVIEW:
    In late 2006, Microsoft released two KB articles detailing Updates for Windows XP and Windows 2003 systems, made necessary by various changes to laws worldwide having to do with which locales belong to which time zones, and Daylight Saving Time start/stop dates. The Updates involved were posted to Microsoft/Windows Updates in January, 2007 as "Optional" or "Recommended" Updates. In February, 2007, a third "Cumulative" Update was released, this time as a "High Priority" Update that is installed by Automatic Updates to Windows XP and 2003 systems. Please see the articles themselves to view the details of these changes.
KB928388 -- "2007 time zone update for Microsoft Windows operating systems"
KB929120 -- "Windows Server 2003-based computers and Windows XP-based computers that are set to the West Australia time zone do not change to daylight saving time on December 3, 2006"
KB931836 -- "February 2007 cumulative time zone update for Microsoft Windows operating systems"
    Editions of Windows Vista already have these changes incorporated into their initial releases, though I believe the February Update is also be required for Vista systems. However, no version of these updates has been provided for "legacy" Windows systems, from Windows 95 through Windows 2000. Others have provided "unofficial updates" to deal with this lack of Support, and here is my own offering.
    Granted, the only change(s) that a person need truly be concerned with are those which relate to the time zone (or zones) in which their computer is expected to operate. They could choose, instead, to use TZEDIT.EXE, a utility available for download from Microsoft's FTP site, to make these few and simple changes. But, as with all things computer, using TZEDIT introduces a greater risk of human error. For those willing to take that chance, the utility can be downloaded here:
ftp://ftp.microsoft.com/Services/TechNet/samples/PS/Win98/Reskit/CONFIG/TZEDIT.EXE
    While this download is a copy of the utility contained in the Windows 98 RESKIT, available on standard Windows 98/98SE installation CDs, it actually works just fine for all Windows 9x systems, but its use on Windows 2000 removes the "STD" value and adds "Standard Time" to the sub-key name. I don't know whether this would cause any problems or not.
DISCUSSION:
    The Time Zone information contained in Windows Registries has two purposes:
    1. The information is used by your computer to relate your local time and date information to Coordinated Universal Time (UTC), aka Greenwich Mean Time (GMT). This allows computers in different time zones to all be "on the same page" when it comes to time and date. For example, if I send an email at exactly 1pm Pacific Standard Time (PST) on February 2, 2007, the following Date header is included: "Date: Fri, 2 Feb 2007 13:00:00 -0800". This translates to "2 Feb 2007 21:00:00 UTC" (13:00:00 + 8 hours). If the recipient of this email is in Germany, which on that date is UTC plus one hour, that person's computer translates the date/time code to Feb 2, 2007 22:00:00, or 10pm, which is when I actually sent the email in "real time". If that email is also sent to another friend in Bangkok (UTC +0700), that friend will see the email as sent on 3 Feb, 2007 04:00:00. Email is just one simple example. With only a little imagination, one can see that this worldwide time coordination of computers can be much more critical in other applications where computers in different time zones are sharing information. Of course, everyone could operate on UTC, but that would cause problems with the human interface.
    2. The Registry Time Zone information also allows your Windows computer to automatically adjust your clock and UTC offset for Daylight Saving Time.

    Each sub-key of the Time Zones key has a name that is important only to the internal working of Windows, but which is representative of the information contained therein, and includes the following Values:
    "Display" -- What is shown as the location and Standard Time UTC offset when you use the drop-down menu in your Date and Time Properties dialogue, which is accessed from the Control Panel or by double-clicking the clock in the System Tray.
    "STD" and  "DLT" values simply repeat the name of the sub-key and add "Standard Time" or "Daylight Time", accordingly. I can't see any specific function this data serves, but I presume it is made available to applications that might want to use it. (In the case of WinXP/2003, the "STD" value simply repeats the sub-key name.)
    "MapID", which allows the map in the Date/Time dialogue, where present, to be centered upon the Time Zone you choose. Cute but not of any real significance, and, in fact, this data is missing for most if not all of the newest entries. Probably just an oversight.
    "TZI" -- A binary Value that includes the UTC offsets for the time zone, and, most importantly for the second item above, the dates and times at which the locale changes from Standard Time to Daylight Saving Time and back. This is the only truly important Value contained in these sub-keys in the case of legacy systems.
    Windows XP and 2003 systems, and Windows Vista, also include another Value, "Index". I'm not clear on what function this data serves, nor am I absolutely certain, at this writing, whether it existed in those systems prior to the recent updates.
UPDATES:
    The three new Updates for Windows XP and 2003, in addition to updating the Time Zone information discussed above, also install a new application/service that makes future changes contemplated by variously enacted laws worldwide automatic. For example, the recent changes in Australian law for the Western Australia Time Zone only contemplate a three year "trial" of the new change for 2007. Presumably, these Windows systems will revert the data for that time zone to previous values, unless the change is made permanent by Australia, at which time I presume that another Update will make the proper adjustments. On a simpler scale, for many of the changes that will only take effect in 2007 -- in the United States, for instance -- the new Service just told Windows to wait until 2007 to make the change. There are other more complicated examples, but I'm not going to try to figure them out from the Registry data. The entries for Israel, in particular, look very interesting. The data for these changes are included in sub-keys of the affected Time Zone sub-keys called "Dynamic DST". Other info has also been added to the main Time Zone key that I'm not entirely certain about, though the "Index" value seems to be involved.
    The point is: None of the above is at all applicable to versions of Windows earlier than XP/2003. So, for the Unofficial Updates I am making available here, I have removed all of that data. Also, the newer versions of Windows changed the naming convention for the Time Zone sub-keys to add "Standard Time" to all of them -- The key that used to be named "Afghanistan" is now named "Afghanistan Standard Time". As far as I know, it's not operationally important, and I could have left the new additions named that way, or updated the old keys to the new naming convention, but it simply makes no sense to me to name the keys thusly, since a good part of the data involved also have to do with Daylight Saving Time. So, on the off chance that it does make a difference to the legacy systems, but more because of my own sensibilities, I have renamed the new keys using the old convention, removing "Standard Time" from the key names.
UNOFFICIAL UPDATES:
 The "Unofficial Updates" I am providing here update legacy Windows Registries to include all of the applicable new data from the official Updates for Windows XP/2003. The "Legacy" systems include all versions of Windows 95, 98 and ME, NT4 and 2000. I have tested them on Windows 95B, 98, 98+SP1, 98SE, ME and 2000. Since the Time Zones key in Windows NT Registries (Windows 2000 and NT4) are sub-keys of "HKLM\Software\Microsoft\
Windows NT", and the 9x systems all have the Time Zones key in "HKLM\Software\Microsoft Windows", they require different update files. While the updates themselves are small in size, I have packed them into self-executing ZIP files, both for maximum portability and to evade many of the "security features" now in place on Windows systems. The ZIP files contain a REG file that does the actual updating, executed by a batch file that will also automatically back up the existing Time Zones key to the Windows directory before Merging the REG file. A Readme.txt file is also included, and is automatically launched upon completion of the merge.
LANGUAGES:
    I am only able to provide this Unofficial Time Zone Update in the English language. As far as I know, it is only useful to English Windows systems. I invite Microsoft MVPs from other countries, and any other interested parties, to use the data included in these files to create similar Unofficial Updates for their own languages. You can also contact me at gryst@grystmill.com to confer on methodology. I can't say, for certain, that the TZI data translates to other languages, so you may have to recreate the files from scratch.
INSTRUCTIONS:
    Download the appropriate EXE file using links below and run the EXE. (I suggest saving this Update for possible future needs.) This latest version of the update resets the Time/Date applet automatically, however a full restart of the system is required in some cases.

A backup of the previous Time Zones Registry key, named TZ_BAK.reg, will be saved to your Windows directory. If you perform the procedure more than once, no further backups will be created.

SYSADMINS: See here for a discussion of how best to update many systems.
DOWNLOADS:
    WARNING! DO NOT use these Unofficial Updates on any Windows systems other than the ones listed. For Windows XP and 2003 systems, use Windows Updates.
    NOTE! This update ENTIRELY REPLACES the Time Zones key. Any custom modifications made prior to installation will be LOST! However, there is an automatic backup created before the changes are made, as discussed above.

"Grystmill Unofficial Time Zone Update" for Windows 9x
(all versions of Windows 95, 98 and ME)

"Grystmill Unofficial Time Zone Update" for Windows NT
(all versions of Windows NT4 and 2000)

Updated May 8, 2007 to include new data for New Zealand