Someone asked about adding the “Olson” database of timezones to Windows, and I learned about tzedit.exe and the registry keys. Tzedit.exe is a simple tool that allows you to add or edit the time zone registry entries, which live in the registry at HKLMSoftwareMicrosoftWindows NTCurrentVersionTime Zones…
Windows KB 317211 discusses various ways of changing time zone data, but the gist of it is that keys are added or removed from the Time Zones key in the registry. If one wanted to put the whole Olson database in the registry it should be reasonably straightforward to make a tool to do so (but your time zone drop down would get pretty big so I’m not sure how it’d impact usability).
The cryptic part of the registry information is the “TZI” value, but KB 221542 provides a VB program to muck with time zone data, which defines the following type to describe this data, so that should be helpful.
Private Type REGTIMEZONEINFORMATION
Bias As Long
StandardBias As Long
DaylightBias As Long
StandardDate As SYSTEMTIME
DaylightDate As SYSTEMTIME
So far I’m not aware of any tool that actually imports the Olson data, but by putting together these pieces it should be possible.
It should be noted that time zone data isn’t simple to work with. Governments keep changing their rules for things like daylight savings time and what the time zone offset should be in which places. Also these KB articles are referring to shipping versions of Windows, I’m not sure how the behavior may differ in Windows Vista, so caveat programmer.