'
' Daylight Savings Time (DST) Update Script for Microsoft Windows 98 through Windows 2000 Operating Systems
'
' This script will update your computer's registry with the new DST rules instituted by the United
' States Congress in 2005 taking effect in 2007. It will also update other known DST time zone
' changes made by other countries possibly as a result of the change in the United States or for
' their own reasons.
'
' The changes this script makes are done according to the Microsoft Support Knowledgebase article
' KB914387 found at [URL unfurl="true"]http://support.microsoft.com/kb/914387/en-us[/URL] as of 9 March 2007.
'
' Copyright (C) 2007 Craig.E.Shea
'
' This program is free software; you can redistribute it and/or modify it under the terms of the
' GNU General Public License as published by the Free Software Foundation; either version 2 of the
' License, or (at your option) any later version.
'
' This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without
' even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
' General Public License for more details.
'
' You should have received a copy of the GNU General Public License along with this program; if not,
' write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
'
' In addition, you may view the full terms of this license at:
' [URL unfurl="true"]http://www.fsf.org/licensing/licenses/info/GPLv2.html[/URL]
'
'
' Date Created: 09 March 2007 15:36:35 EST
' Author: Craig E. Shea
' Company: NexOS Creations
' CONSTANTS
Const HKLM = &H80000002 ' HKEY_LOCAL_MACHINE
Const REG_SZ = 1
Const REG_BINARY = 3
Const REG_DWORD = 4
' This function will determine whether a key exists in the registry.
' The parameter 'key' is the full path to the subkey, not including HKEY_LOCAL_MACHINE or
' HKEY_CURRENT_USER for example. The parameter 'hkey' is the registry hive/branch in which to begin,
' searching for the key specefied by the numeric constant that represents the hive. This script only
' makes use of HKLM, so that is the only registry hive constant that is defined.
Function KeyExists(hkey, key) 'As Boolean
Dim arrSubKeys() ' An [out] parameter to hold the results....
Dim oReg
Set oReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & _
"\root\default:StdRegProv")
If oReg.EnumKey(hkey, key, arrSubKeys) = 0 Then
KeyExists = True
Else
KeyExists = False
End If
Set oReg = Nothing
End Function
'********************* M A I N P R O G R A M S T A R T S H E R E *************************
' Step 00.: Hehe...ran out of numbers.... OK, first, I don't care if this script doesn't work on
' other people's machines...it works on mine. A majority of this code should run on any
' machine with the prerequisite software installed. If not, I leave it as an exercise to
' the reader to modify it for his/her own purposes. At least you'll have the algorithm
' within this code to update the DST settings on your Pre-XP machines....
'
' Without further adieu, the first thing we must check for is WSH version 5.6.
If WScript.Version < 5.6 Then
oShell.Popup "Windows Script Host (WSH) version 5.6 is required to run this script." & chr(13) & _
chr(10) & "You currently have WSH version " & WScript.Version & " installed." & chr(13) & _
chr(10) & "Please upgrade WSH in order to run this script.", 15, "Incompatable WSH Version", _
vbCritical+vbOk
WScript.Quit 0
End If
' Step 0.: Determine if we are running on Windows 9x- or NT-based machine...
Set oShell = WScript.CreateObject("WScript.Shell")
' String representing the local computer name in the WMI namespace
strComputer = "."
' String representing the path to specific registry subkeys we are interested in manipulating
strKeyPath = ""
' Get a WMIService object...this has the dual purpose of telling us whether WMI is installed. If it's
' not, we quit, because we need WMI to write the registry values (that's what I used, anyway. If
' you want to change my script, feel free, but the Windows 2000 Scripting Guide had no information
' on whether WShell.RegXXXXXX functions included a routine that could be used to add registry values,
' let alone REG_BINARY values.
On Error Resume Next
Set colWin32_OS = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & _
"\root\cimv2").InstancesOf("Win32_OperatingSystem")
If Err.Number <> 0 Then
oShell.Popup "It appears the Windows Management Instrumentation (WMI) interface is not installed." & _
chr(13) & chr(10) & "WMI is required to run this script. It is freely downloadable from Microsoft.", _
15, "WMI Not Installed", vbCritical+vbOk
Set oShell = Nothing
WScript.Quit 0
End If
On Error Goto 0
' Get the OS version, break it down into major/minor version and get the OS Type code...
Dim ver , majVer, minVer, t
For Each oWin32_OS in colWin32_OS
ver = oWin32_OS.Properties_("Version")
t = oWin32_OS.Properties_("OSType")
Next
' We don't need this anymore.
Set colWin32_OS = Nothing
majVer = Left(ver, InStr(ver, ".") - 1)
minVer = Mid(ver, InStr(ver, ".") + 1, Len(ver))
If InStr(minVer, ".") Then
minVer = Left(minVer, InStr(minVer, ".") - 1)
End If
' Now let's determine the Operating System Type...
Select Case t
Case 17 ' We are running some version of Win9x-based OS
If minVer = 0 Then
oShell.Popup "You are running on Windows95. Windows95 is unsupported." & chr(13) & chr(10) & _
"You really should upgrade to Windows XP.", 15, "Unsupported Operating System", _
vbCritical+vbOk
WScript.Quit 0
ElseIf minVer = "10" Or minVer = "90" Then ' We're running on Windows 98 or Windows ME
ver = "9x"
End If
Case 18 ' We are running some version of WinNT-based OS
If majVer = 5 Then ' We're running on Windows 2000 or above.
If minVer <> 0 Then ' We're running on Windows XP or above. Don't do that, use the MS patch.
oShell.Popup "You are running Windows XP or above." & chr(13) & chr(10) & _
"It is highly recommended that you download the patch provided by Microsoft Corp. instead.", _
15, "Unsupported Operating System", vbCritical+vbOk
oShell.Popup "Time zone information has not been updated because you are running Windows XP or above.", _
15, "Time Zone Update Failure", vbCritical+vbOk
oShell.LogEvent 1, "DST 2007 Registry Update and Refresh failed to update the time zone information on this computer." & _
"You are running the DST Update Script on an unsupported operating system: Windows XP/2003/Vista"
WScript.Quit 0
Else ' We're running on Windows 2000.
ver = "NT"
End If
ElseIf majVer = 4 Then ' We're running on Windows NT 4.0
ver = "NT"
Else ' We're running on Windows NT 3.5, which is unsupported.
oShell.Popup "You are running Windows NT 3.x. Windows NT 3.x is unsupported." & chr(13) & chr(10) & _
"You really should upgrade to Windows Server 2003", 15, "Unsupported Operating System", _
vbCritical+vbOk
WScript.Quit 0
End If
Case Else ' You should never hit this...but just in case....
oShell.Popup "It appears you are not running a Microsoft Operating System such as Windows XP," & _
chr(13) & chr(10) & "but are still able to run VBS WSH scripts." & chr(13) & chr(10) & _
"This script is only meant to update the Time Zone information on Microsoft Windows 98 and above.", _
15, "Unsupported Operating System", vbCritical+vbOK
WScript.Quit 0
End Select
' Step 1.: Export the existing Time Zone information contained in the registry and store in
' the directory in which this script is executing in the following manner:
'
' %windir%\Temp\Pre2007TZDB.reg
' %windir%\Temp\Pre2007TZInfo.reg
'
Set fso = WScript.CreateObject("Scripting.FileSystemObject")
' Check to see if %windir%\Temp exists, if not, create it.
If Not fso.FolderExists(oShell.Environment("Process").Item("windir") & "\Temp") Then
oShell.CurrentDirectory = fso.CreateFolder(oShell.Environment("Process").Item("windir") & "\Temp")
Else
oShell.CurrentDirectory = fso.GetFolder(oShell.Environment("Process").Item("windir") & "\Temp")
End If
' Store the registry path to the Time Zones subkey and backup the registry keys containing
' Time Zone Information.
If ver = "NT" Then ' We're running on a NT-based OS
strKeyPath = "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\"
oShell.Run "regedit.exe /e " & oShell.CurrentDirectory & "\Pre2007TZDB.reg " & _
"""HKEY_LOCAL_MACHINE\" & Left(strKeyPath, Len(strKeyPath) - 1) & """", 0, True
Else ' We're running on a Win9x-based OS.
strKeyPath = "SOFTWARE\Microsoft\Windows\CurrentVersion\Time Zones\"
oShell.Run "regedit.exe /e " & oShell.CurrentDirectory & "\Pre2007TZDB.reg " & _
"""HKEY_LOCAL_MACHINE\" & Left(strKeyPath, Len(strKeyPath) - 1) & """", 0, True
End If
oShell.Run "regedit.exe /e " & oShell.CurrentDirectory & "\Pre2007TZInfo.reg " & _
"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation", 0, True
' Make sure that backup files have been created.
Dim r ' Holds result of the dialog box if backup files weren't created.
If Not fso.FileExists(oShell.CurrentDirectory & "\Pre2007TZDB.reg") Or _
Not fso.FileExists(oShell.CurrentDirectory & "\Pre2007TZInfo.reg") Then
' Warn and ask the user if the script should continue. If this script is being run unattended,
' the dialog will dismiss itself in 30 seconds and the script will automatically terminate.
r = oShell.Popup("The Time Zone information contained in the registry was unable to be backed up." & _
chr(13) & chr(10) & chr(13) & chr(10) & "Do you wish to continue running this script anyway?", _
30, "Registry Backup Failed", vbYesNo+vbExclamation+vbDefaultButton2)
If r = -1 Or r = 7 Then ' If the dialog box timed out or the user clicked "No"
If ver = "NT" Then
oShell.LogEvent 1, "DST 2007 Registry Update and Refresh failed to update the time zone information on this computer." & _
"A backup of the original registry settings could not be created. Either the user indicated not to " & _
"continue the update or this script timed-out waiting for a response on how to proceed. Please try " & _
"running this script again."
End If
Set fso = Nothing
Set oShell = Nothing
WScript.Quit 0
End If
End If
' The FileSystemObject is no longer needed...discarding
Set fso = Nothing
' Step 2. Write out all the new Time Zone Information into the registry.
Set oReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strComputer & _
"\root\default:StdRegProv")
' These variables will hold an array of subkeys and entries and value types in the Time Zones
' subkeys. Also, they will hold the values (value and bValue--which is an array to hold the value
' of REG_BINARY type entries--of the legacy Win9x entries so that they can be "copied" into the
' newly created entries following the WinNT/2k based naming paradigm.
Dim arrSubkeys, arrEntries, arrEntryNames, arrValueTypes, value, bValue()
With oReg
' First, if we're running on Win9x, let's enumerate all the Time Zone subkeys and change their
' names to the Win2k subkey naming paradigm, specifically, "<time zone name> Standard Time". This
' will greatly reduce the amount of code I have to write. Also, it will make it a whole lot more
' simpler.
If ver = "9x" Then
.EnumKey HKLM, Left(strKeyPath, Len(strKeyPath) - 1), arrSubkeys
For Each subkey In arrSubkeys
.EnumValues HKLM, strKeyPath & subkey, arrEntryNames, arrValueTypes
.CreateKey HKLM, strKeyPath & subkey & " Standard Time"
For i = 0 To UBound(arrEntryNames)
Select Case arrValueTypes(i)
Case REG_SZ
.GetStringValue HKLM, strKeyPath & subkey, arrEntryNames(i), value
.SetStringValue HKLM, strKeyPath & subkey & " Standard Time", arrEntryNames(i), value
.DeleteValue HKLM, strKeyPath & subkey, arrEntryNames(i)
Case REG_DWORD
.GetDWORDValue HKLM, strKeyPath & subkey, arrEntryNames(i), value
.SetDWORDValue HKLM, strKeyPath & subkey & " Standard Time", arrEntryNames(i), value
.DeleteValue HKLM, strKeyPath & subkey, arrEntryNames(i)
Case REG_BINARY
.GetBinaryValue HKLM, strKeyPath & subkey, arrEntryNames(i), bValue
.SetBinaryValue HKLM, strKeyPath & subkey & " Standard Time", arrEntryNames(i), bValue
.DeleteValue HKLM, strKeyPath & subkey, arrEntryNames(i)
End Select
Next
' Delete the old Time Zone subkey.
.DeleteKey HKLM, strKeyPath & subkey
Next
End If
' Alaskan Standard Time
' Not all Win2K Time Zones exist on NT4/9x and vice versa. I don't care if Win9x/NT time zones
' don't exist on Win2k, as we are only mostly concerned with Win2k being updated and that the NT
' and Win9x machines all have the same TZ info as Win2k. Therefore, make sure the time zone key
' exists on the Win9x/NT machine, and if not, create it. This will be done for each TZ.
If Not KeyExists(HKLM, strKeyPath & "Alaskan Standard Time") Then
.CreateKey HKLM, strKeyPath & "Alaskan Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Alaskan Standard Time", "Display", "(GMT-09:00) Alaska"
.SetStringValue HKLM, strKeyPath & "Alaskan Standard Time", "Dlt", "Alaskan Daylight Time"
.SetStringValue HKLM, strKeyPath & "Alaskan Standard Time", "Std", "Alaskan Standard Time"
.SetStringValue HKLM, strKeyPath & "Alaskan Standard Time", "MapID", "30,31"
.SetDWORDValue HKLM, strKeyPath & "Alaskan Standard Time", "Index", &H00000003
arrTZI = Array(&H1c,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0b,&H00, _
&H00,&H00,&H01,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H00,&H00,&H02,_
&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Alaskan Standard Time", "TZI", arrTZI
' Alaskan Standard Time\Dynamic DST
.CreateKey HKLM, strKeyPath & "Alaskan Standard Time\Dynamic DST"
.SetDWORDValue HKLM, strKeyPath & "Alaskan Standard Time\Dynamic DST", "FirstEntry", &H000007d6
.SetDWORDValue HKLM, strKeyPath & "Alaskan Standard Time\Dynamic DST", "LastEntry", &H000007d7
arrTZI = Array(&H1c,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0a,&H00, _
&H00,&H00,&H05,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H04,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Alaskan Standard Time\Dynamic DST", "2006", arrTZI
arrTZI = Array(&H1c,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0b,&H00, _
&H00,&H00,&H01,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H00,&H00,&H02,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Alaskan Standard Time\Dynamic DST", "2007", arrTZI
' Atlantic Standard Time
If Not KeyExists(HKLM, strKeyPath & "Atlantic Standard Time") Then
.CreateKey HKLM, strKeyPath & "Atlantic Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Atlantic Standard Time", "Display", "(GMT-04:00) Atlantic Time (Canada)"
.SetStringValue HKLM, strKeyPath & "Atlantic Standard Time", "Dlt", "Atlantic Daylight Time"
.SetStringValue HKLM, strKeyPath & "Atlantic Standard Time", "Std", "Atlantic Standard Time"
.SetStringValue HKLM, strKeyPath & "Atlantic Standard Time", "MapID", "40,41"
.SetDWORDValue HKLM, strKeyPath & "Atlantic Standard Time", "Index", &H00000032
arrTZI = Array(&Hf0,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0b,&H00, _
&H00,&H00,&H01,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H00,&H00,&H02,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Atlantic Standard Time", "TZI", arrTZI
' Atlantic Standard Time\Dynamic DST
.CreateKey HKLM, strKeyPath & "Atlantic Standard Time\Dynamic DST"
.SetDWORDValue HKLM, strKeyPath & "Atlantic Standard Time\Dynamic DST", "FirstEntry", &H000007d6
.SetDWORDValue HKLM, strKeyPath & "Atlantic Standard Time\Dynamic DST", "LastEntry", &H000007d7
arrTZI = Array(&Hf0,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0a,&H00, _
&H00,&H00,&H05,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H04,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Atlantic Standard Time\Dynamic DST", "2006", arrTZI
arrTZI = Array(&Hf0,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0b,&H00, _
&H00,&H00,&H01,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H00,&H00,&H02,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Atlantic Standard Time\Dynamic DST", "2007", arrTZI
' AUS Eastern Standard Time
If Not KeyExists(HKLM, strKeyPath & "AUS Eastern Standard Time") Then
.CreateKey HKLM, strKeyPath & "AUS Eastern Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "AUS Eastern Standard Time", "Display", "(GMT+10:00) Canberra, Melbourne, Sydney"
.SetStringValue HKLM, strKeyPath & "AUS Eastern Standard Time", "Dlt", "AUS Eastern Daylight Time"
.SetStringValue HKLM, strKeyPath & "AUS Eastern Standard Time", "Std", "AUS Eastern Standard Time"
.SetStringValue HKLM, strKeyPath & "AUS Eastern Standard Time", "MapID", "20,21"
.SetDWORDValue HKLM, strKeyPath & "AUS Eastern Standard Time", "Index", &H000000ff
arrTZI = Array(&Ha8,&Hfd,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H03,&H00, _
&H00,&H00,&H05,&H00,&H03,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H0a,&H00,&H00,&H00,&H05,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "AUS Eastern Standard Time", "TZI", arrTZI
' Azerbaijan Standard Time
If Not KeyExists(HKLM, strKeyPath & "Azerbaijan Standard Time") Then
.CreateKey HKLM, strKeyPath & "Azerbaijan Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Azerbaijan Standard Time", "Dlt", "Azerbaijan Daylight Time"
.SetStringValue HKLM, strKeyPath & "Azerbaijan Standard Time", "Std", "Azerbaijan Standard Time"
.SetStringValue HKLM, strKeyPath & "Azerbaijan Standard Time", "Display", "(GMT+04:00) Baku"
.SetDWORDValue HKLM, strKeyPath & "Azerbaijan Standard Time", "Index", &H80000040
arrTZI = Array(&H10,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0a,&H00, _
&H00,&H00,&H05,&H00,&H05,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H00,&H00,&H05,_
&H00,&H04,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Azerbaijan Standard Time", "TZI", arrTZI
' Caucasus Standard Time
If Not KeyExists(HKLM, strKeyPath & "Caucasus Standard Time") Then
.CreateKey HKLM, strKeyPath & "Caucasus Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Caucasus Standard Time", "Display", "(GMT+04:00) Yerevan"
.SetStringValue HKLM, strKeyPath & "Caucasus Standard Time", "Dlt", "Caucasus Daylight Time"
.SetStringValue HKLM, strKeyPath & "Caucasus Standard Time", "Std", "Caucasus Standard Time"
.SetStringValue HKLM, strKeyPath & "Caucasus Standard Time", "MapID", "8,9"
.SetDWORDValue HKLM, strKeyPath & "Caucasus Standard Time", "Index", &H000000aa
arrTZI = Array(&H10,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0a,&H00, _
&H00,&H00,&H05,&H00,&H03,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H00,&H00,&H05,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Caucasus Standard Time", "TZI", arrTZI
' Cen. Australia Standard Time
If Not KeyExists(HKLM, strKeyPath & "Cen. Australia Standard Time") Then
.CreateKey HKLM, strKeyPath & "Cen. Australia Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Cen. Australia Standard Time", "Display", "(GMT+09:30) Adelaide"
.SetStringValue HKLM, strKeyPath & "Cen. Australia Standard Time", "Dlt", "Australia Daylight Time"
.SetStringValue HKLM, strKeyPath & "Cen. Australia Standard Time", "Std", "Australia Standard Time"
.SetStringValue HKLM, strKeyPath & "Cen. Australia Standard Time", "MapID", "-1,76"
.SetDWORDValue HKLM, strKeyPath & "Cen. Australia Standard Time", "Index", &H000000fa
arrTZI = Array(&Hc6,&Hfd,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H03,&H00, _
&H00,&H00,&H05,&H00,&H03,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H0a,&H00,&H00,&H00,&H05,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Cen. Australia Standard Time", "TZI", arrTZI
' Central Brazilian Standard Time
If Not KeyExists(HKLM, strKeyPath & "Central Brazilian Standard Time") Then
.CreateKey HKLM, strKeyPath & "Central Brazilian Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Central Brazilian Standard Time", "Display", "(GMT-04:00) Manaus"
.SetStringValue HKLM, strKeyPath & "Central Brazilian Standard Time", "Dlt", "Central Brazilian Daylight Time"
.SetStringValue HKLM, strKeyPath & "Central Brazilian Standard Time", "Std", "Central Brazilian Standard Time"
.SetDWORDValue HKLM, strKeyPath & "Central Brazilian Standard Time", "Index", &H80000048
arrTZI = Array(&Hf0,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H02,&H00, _
&H00,&H00,&H05,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H0b,&H00,&H00,&H00,&H01,_
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Central Brazilian Standard Time", "TZI", arrTZI
' Central Brazilian Standard Time\Dynamic DST
.CreateKey HKLM, strKeyPath & "Central Brazilian Standard Time\Dynamic DST"
.SetDWORDValue HKLM, strKeyPath & "Central Brazilian Standard Time\Dynamic DST", "FirstEntry", &H000007d6
.SetDWORDValue HKLM, strKeyPath & "Central Brazilian Standard Time\Dynamic DST", "LastEntry", &H000007d7
arrTZI = Array(&Hf0,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H02,&H00, _
&H00,&H00,&H02,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H0b,&H00,&H00,&H00,&H01,_
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Central Brazilian Standard Time\Dynamic DST", "2006", arrTZI
arrTZI = Array(&Hf0,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H02,&H00, _
&H00,&H00,&H05,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H0b,&H00,&H00,&H00,&H01,_
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Central Brazilian Standard Time\Dynamic DST", "2007", arrTZI
' Central Standard Time
If Not KeyExists(HKLM, strKeyPath & "Central Standard Time") Then
.CreateKey HKLM, strKeyPath & "Central Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Central Standard Time", "Display", "(GMT-06:00) Central Time (US & Canada)"
.SetStringValue HKLM, strKeyPath & "Central Standard Time", "Dlt", "Central Daylight Time"
.SetStringValue HKLM, strKeyPath & "Central Standard Time", "Std", "Central Standard Time"
.SetStringValue HKLM, strKeyPath & "Central Standard Time", "MapID", "36,37"
.SetDWORDValue HKLM, strKeyPath & "Central Standard Time", "Index", &H00000014
arrTZI = Array(&H68,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0b,&H00, _
&H00,&H00,&H01,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H00,&H00,&H02,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Central Standard Time", "TZI", arrTZI
' Central Standard Time (Mexico)
If Not KeyExists(HKLM, strKeyPath & "Central Standard Time (Mexico)") Then
.CreateKey HKLM, strKeyPath & "Central Standard Time (Mexico)"
End If
.SetStringValue HKLM, strKeyPath & "Central Standard Time (Mexico)", "Display", "(GMT-06:00) Guadalajara, Mexico City, Monterrey - New"
.SetStringValue HKLM, strKeyPath & "Central Standard Time (Mexico)", "Dlt", "Central Daylight Time (Mexico)"
.SetStringValue HKLM, strKeyPath & "Central Standard Time (Mexico)", "Std", "Central Standard Time (Mexico)"
.SetDWORDValue HKLM, strKeyPath & "Central Standard Time (Mexico)", "Index", &H80000043
arrTZI = Array(&H68,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0a,&H00, _
&H00,&H00,&H05,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H04,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Central Standard Time (Mexico)", "TZI", arrTZI
' Central Standard Time\Dynamic DST
.CreateKey HKLM, strKeyPath & "Central Standard Time\Dynamic DST"
.SetDWORDValue HKLM, strKeyPath & "Central Standard Time\Dynamic DST", "FirstEntry", &H000007d6
.SetDWORDValue HKLM, strKeyPath & "Central Standard Time\Dynamic DST", "LastEntry", &H000007d7
arrTZI = Array(&H68,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0a,&H00, _
&H00,&H00,&H05,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H04,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Central Standard Time\Dynamic DST", "2006", arrTZI
arrTZI = Array(&H68,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0b,&H00, _
&H00,&H00,&H01,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H00,&H00,&H02,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Central Standard Time\Dynamic DST", "2007", arrTZI
' E. Europe Standard Time
If Not KeyExists(HKLM, strKeyPath & "E. Europe Standard Time") Then
.CreateKey HKLM, strKeyPath & "E. Europe Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "E. Europe Standard Time", "Display", "(GMT+02:00) Minsk"
.SetStringValue HKLM, strKeyPath & "E. Europe Standard Time", "Dlt", "E. Europe Daylight Time"
.SetStringValue HKLM, strKeyPath & "E. Europe Standard Time", "Std", "E. Europe Standard Time"
.SetStringValue HKLM, strKeyPath & "E. Europe Standard Time", "MapID", "4,5"
.SetDWORDValue HKLM, strKeyPath & "E. Europe Standard Time", "Index", &H00000073
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0a,&H00, _
&H00,&H00,&H05,&H00,&H03,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H00,&H00,&H05,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "E. Europe Standard Time", "TZI", arrTZI
' E. South America Standard Time
If Not KeyExists(HKLM, strKeyPath & "E. South America Standard Time") Then
.CreateKey HKLM, strKeyPath & "E. South America Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "E. South America Standard Time", "Display", "(GMT-03:00) Brasilia"
.SetStringValue HKLM, strKeyPath & "E. South America Standard Time", "Dlt", "E. South America Daylight Time"
.SetStringValue HKLM, strKeyPath & "E. South America Standard Time", "Std", "E. South America Standard Time"
.SetStringValue HKLM, strKeyPath & "E. South America Standard Time", "MapID", "-1,80"
.SetDWORDValue HKLM, strKeyPath & "E. South America Standard Time", "Index", &H00000041
arrTZI = Array(&Hb4,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H02,&H00, _
&H00,&H00,&H05,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H0b,&H00,&H00,&H00,&H01,_
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "E. South America Standard Time", "TZI", arrTZI
' E. South America Standard Time\Dynamic DST
.CreateKey HKLM, strKeyPath & "E. South America Standard Time\Dynamic DST"
.SetDWORDValue HKLM, strKeyPath & "E. South America Standard Time\Dynamic DST", "FirstEntry", &H000007d6
.SetDWORDValue HKLM, strKeyPath & "E. South America Standard Time\Dynamic DST", "LastEntry", &H000007d7
arrTZI = Array(&Hb4,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H02,&H00, _
&H00,&H00,&H02,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H0b,&H00,&H00,&H00,&H01,_
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "E. South America Standard Time\Dynamic DST", "2006", arrTZI
arrTZI = Array(&Hb4,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H02,&H00, _
&H00,&H00,&H05,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H0b,&H00,&H00,&H00,&H01,_
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "E. South America Standard Time\Dynamic DST", "2007", arrTZI
' Eastern Standard Time
If Not KeyExists(HKLM, strKeyPath & "Eastern Standard Time") Then
.CreateKey HKLM, strKeyPath & "Eastern Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Eastern Standard Time", "Display", "(GMT-05:00) Eastern Time (US & Canada)"
.SetStringValue HKLM, strKeyPath & "Eastern Standard Time", "Dlt", "Eastern Daylight Time"
.SetStringValue HKLM, strKeyPath & "Eastern Standard Time", "Std", "Eastern Standard Time"
.SetStringValue HKLM, strKeyPath & "Eastern Standard Time", "MapID", "38,39"
.SetDWORDValue HKLM, strKeyPath & "Eastern Standard Time", "Index", &H00000023
arrTZI = Array(&H2c,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0b,&H00, _
&H00,&H00,&H01,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H00,&H00,&H02,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Eastern Standard Time", "TZI", arrTZI
' Eastern Standard Time\Dynamic DST
.CreateKey HKLM, strKeyPath & "Eastern Standard Time\Dynamic DST"
.SetDWORDValue HKLM, strKeyPath & "Eastern Standard Time\Dynamic DST", "FirstEntry", &H000007d6
.SetDWORDValue HKLM, strKeyPath & "Eastern Standard Time\Dynamic DST", "LastEntry", &H000007d7
arrTZI = Array(&H2c,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0a,&H00, _
&H00,&H00,&H05,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H04,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Eastern Standard Time\Dynamic DST", "2006", arrTZI
arrTZI = Array(&H2c,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0b,&H00, _
&H00,&H00,&H01,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H00,&H00,&H02,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Eastern Standard Time\Dynamic DST", "2007", arrTZI
' Egypt Standard Time
If Not KeyExists(HKLM, strKeyPath & "Egypt Standard Time") Then
.CreateKey HKLM, strKeyPath & "Egypt Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Egypt Standard Time", "Display", "(GMT+02:00) Cairo"
.SetStringValue HKLM, strKeyPath & "Egypt Standard Time", "Dlt", "Egypt Daylight Time"
.SetStringValue HKLM, strKeyPath & "Egypt Standard Time", "Std", "Egypt Standard Time"
.SetStringValue HKLM, strKeyPath & "Egypt Standard Time", "MapID", "4,68"
.SetDWORDValue HKLM, strKeyPath & "Egypt Standard Time", "Index", &H00000078
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H09,&H00, _
&H04,&H00,&H05,&H00,&H17,&H00,&H3b,&H00,&H3b,&H00,&H00,&H00,&H00,&H00,&H04,&H00,&H04,&H00,&H05,_
&H00,&H17,&H00,&H3b,&H00,&H3b,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Egypt Standard Time", "TZI", arrTZI
' Georgian Standard Time
If Not KeyExists(HKLM, strKeyPath & "Georgian Standard Time") Then
.CreateKey HKLM, strKeyPath & "Georgian Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Georgian Standard Time", "Display", "(GMT+03:00) Tbilisi"
.SetStringValue HKLM, strKeyPath & "Georgian Standard Time", "Dlt", "Georgian Daylight Time"
.SetStringValue HKLM, strKeyPath & "Georgian Standard Time", "Std", "Georgian Standard Time"
.SetDWORDValue HKLM, strKeyPath & "Georgian Standard Time", "Index", &H80000047
arrTZI = Array(&H4c,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00, _
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,_
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Georgian Standard Time", "TZI", arrTZI
' Greenwich Standard Time
If Not KeyExists(HKLM, strKeyPath & "Greenwich Standard Time") Then
.CreateKey HKLM, strKeyPath & "Greenwich Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Greenwich Standard Time", "Display", "(GMT) Casablanca, Monrovia, Reykjavik"
.SetStringValue HKLM, strKeyPath & "Greenwich Standard Time", "Dlt", "Greenwich Daylight Time"
.SetStringValue HKLM, strKeyPath & "Greenwich Standard Time", "Std", "Greenwich Standard Time"
.SetStringValue HKLM, strKeyPath & "Greenwich Standard Time", "MapID", "88,89"
.SetDWORDValue HKLM, strKeyPath & "Greenwich Standard Time", "Index", &H0000005a
arrTZI = Array(&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00, _
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,_
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Greenwich Standard Time", "TZI", arrTZI
' GTB Standard Time
If Not KeyExists(HKLM, strKeyPath & "GTB Standard Time") Then
.CreateKey HKLM, strKeyPath & "GTB Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "GTB Standard Time", "Display", "(GMT+02:00) Athens, Bucharest, Istanbul"
.SetStringValue HKLM, strKeyPath & "GTB Standard Time", "Dlt", "GTB Daylight Time"
.SetStringValue HKLM, strKeyPath & "GTB Standard Time", "Std", "GTB Standard Time"
.SetStringValue HKLM, strKeyPath & "GTB Standard Time", "MapID", "-1,67"
.SetDWORDValue HKLM, strKeyPath & "GTB Standard Time", "Index", &H00000082
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0a,&H00, _
&H00,&H00,&H05,&H00,&H04,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H00,&H00,&H05,_
&H00,&H03,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "GTB Standard Time", "TZI", arrTZI
' Iran Standard Time
If Not KeyExists(HKLM, strKeyPath & "Iran Standard Time") Then
.CreateKey HKLM, strKeyPath & "Iran Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Iran Standard Time", "Display", "(GMT+03:30) Tehran"
.SetStringValue HKLM, strKeyPath & "Iran Standard Time", "Dlt", "Iran Daylight Time"
.SetStringValue HKLM, strKeyPath & "Iran Standard Time", "Std", "Iran Standard Time"
.SetStringValue HKLM, strKeyPath & "Iran Standard Time", "MapID", "-1,72"
.SetDWORDValue HKLM, strKeyPath & "Iran Standard Time", "Index", &H000000a0
arrTZI = Array(&H2e,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00, _
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,_
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Iran Standard Time", "TZI", arrTZI
' Iran Standard Time\Dynamic DST
.CreateKey HKLM, strKeyPath & "Iran Standard Time\Dynamic DST"
.SetDWORDValue HKLM, strKeyPath & "Iran Standard Time\Dynamic DST", "FirstEntry", &H000007d5
.SetDWORDValue HKLM, strKeyPath & "Iran Standard Time\Dynamic DST", "LastEntry", &H000007d6
arrTZI = Array(&H2e,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H09,&H00, _
&H02,&H00,&H04,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Iran Standard Time\Dynamic DST", "2005", arrTZI
arrTZI = Array(&H2e,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00, _
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,_
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Iran Standard Time\Dynamic DST", "2006", arrTZI
' Israel Standard Time
If Not KeyExists(HKLM, strKeyPath & "Israel Standard Time") Then
.CreateKey HKLM, strKeyPath & "Israel Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Israel Standard Time", "Display", "(GMT+02:00) Jerusalem"
.SetStringValue HKLM, strKeyPath & "Israel Standard Time", "Dlt", "Jerusalem Daylight Time"
.SetStringValue HKLM, strKeyPath & "Israel Standard Time", "Std", "Jerusalem Standard Time"
.SetStringValue HKLM, strKeyPath & "Israel Standard Time", "MapID", "-1,70"
.SetDWORDValue HKLM, strKeyPath & "Israel Standard Time", "Index", &H00000087
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H09,&H00, _
&H00,&H00,&H03,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H05,&H00,&H05,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time", "TZI", arrTZI
' Israel Standard Time\Dynamic DST
.CreateKey HKLM, strKeyPath & "Israel Standard Time\Dynamic DST"
.SetDWORDValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "FirstEntry", &H000007d4
.SetDWORDValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "LastEntry", &H000007e7
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00, _
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,_
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2004", arrTZI
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&Hd5,&H07,&H0a,&H00, _
&H00,&H00,&H09,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hd5,&H07,&H04,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2005", arrTZI
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&Hd6,&H07,&H0a,&H00, _
&H00,&H00,&H01,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hd6,&H07,&H03,&H00,&H00,&H00,&H1f,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2006", arrTZI
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&Hd7,&H07,&H09,&H00, _
&H00,&H00,&H10,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hd7,&H07,&H03,&H00,&H00,&H00,&H1e,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2007", arrTZI
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&Hd8,&H07,&H0a,&H00, _
&H00,&H00,&H05,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hd8,&H07,&H03,&H00,&H00,&H00,&H1c,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2008", arrTZI
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&Hd9,&H07,&H09,&H00, _
&H00,&H00,&H1b,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hd9,&H07,&H03,&H00,&H00,&H00,&H1b,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2009", arrTZI
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&Hda,&H07,&H09,&H00, _
&H00,&H00,&H0c,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hda,&H07,&H03,&H00,&H00,&H00,&H1a,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2010", arrTZI
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&Hdb,&H07,&H0a,&H00, _
&H00,&H00,&H02,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hdb,&H07,&H04,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2011", arrTZI
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&Hdc,&H07,&H09,&H00, _
&H00,&H00,&H17,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hdc,&H07,&H03,&H00,&H00,&H00,&H1e,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2012", arrTZI
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&Hdd,&H07,&H09,&H00, _
&H00,&H00,&H08,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hdd,&H07,&H03,&H00,&H00,&H00,&H1d,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2013", arrTZI
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&Hde,&H07,&H09,&H00, _
&H00,&H00,&H1c,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hde,&H07,&H03,&H00,&H00,&H00,&H1c,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2014", arrTZI
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&Hdf,&H07,&H09,&H00, _
&H00,&H00,&H14,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hdf,&H07,&H03,&H00,&H00,&H00,&H1b,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2015", arrTZI
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&He0,&H07,&H0a,&H00, _
&H00,&H00,&H09,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&He0,&H07,&H04,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2016", arrTZI
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&He1,&H07,&H09,&H00, _
&H00,&H00,&H18,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&He1,&H07,&H03,&H00,&H00,&H00,&H1f,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2017", arrTZI
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&He2,&H07,&H09,&H00, _
&H00,&H00,&H10,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&He2,&H07,&H03,&H00,&H00,&H00,&H1e,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2018", arrTZI
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&He3,&H07,&H0a,&H00, _
&H00,&H00,&H06,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&He3,&H07,&H03,&H00,&H00,&H00,&H1d,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2019", arrTZI
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&He4,&H07,&H09,&H00, _
&H00,&H00,&H1b,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&He4,&H07,&H03,&H00,&H00,&H00,&H1b,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2020", arrTZI
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&He5,&H07,&H09,&H00, _
&H00,&H00,&H0c,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&He5,&H07,&H03,&H00,&H00,&H00,&H1a,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2021", arrTZI
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&He6,&H07,&H0a,&H00, _
&H00,&H00,&H02,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&He6,&H07,&H04,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2022", arrTZI
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00, _
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,_
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Israel Standard Time\Dynamic DST", "2023", arrTZI
' Jordan Standard Time
If Not KeyExists(HKLM, strKeyPath & "Jordan Standard Time") Then
.CreateKey HKLM, strKeyPath & "Jordan Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Jordan Standard Time", "Display", "(GMT+02:00) Amman"
.SetStringValue HKLM, strKeyPath & "Jordan Standard Time", "Dlt", "Jordan Daylight Time"
.SetStringValue HKLM, strKeyPath & "Jordan Standard Time", "Std", "Jordan Standard Time"
.SetStringValue HKLM, strKeyPath & "Jordan Standard Time", "Index", &H80000042
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H09,&H00, _
&H05,&H00,&H05,&H00,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H04,&H00,&H05,_
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Jordan Standard Time", "TZI", arrTZI
' Mexico Standard Time
If Not KeyExists(HKLM, strKeyPath & "Mexico Standard Time") Then
.CreateKey HKLM, strKeyPath & "Mexico Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Mexico Standard Time", "Display", "(GMT-06:00) Guadalajara, Mexico City, Monterrey - Old"
.SetStringValue HKLM, strKeyPath & "Mexico Standard Time", "Dlt", "Mexico Daylight Time"
.SetStringValue HKLM, strKeyPath & "Mexico Standard Time", "Std", "Mexico Standard Time"
.SetStringValue HKLM, strKeyPath & "Mexico Standard Time", "MapID", "-1,85"
.SetDWORDValue HKLM, strKeyPath & "Mexico Standard Time", "Index", &H0000001e
arrTZI = Array(&H68,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0a,&H00, _
&H00,&H00,&H05,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H04,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Mexico Standard Time", "TZI", arrTZI
' Mexico Standard Time 2
If Not KeyExists(HKLM, strKeyPath & "Mexico Standard Time 2") Then
.CreateKey HKLM, strKeyPath & "Mexico Standard Time 2"
End If
.SetStringValue HKLM, strKeyPath & "Mexico Standard Time 2", "Display", "(GMT-07:00) Chihuahua, La Paz, Mazatlan - Old"
.SetStringValue HKLM, strKeyPath & "Mexico Standard Time 2", "Dlt", "Mexico Daylight Time 2"
.SetStringValue HKLM, strKeyPath & "Mexico Standard Time 2", "Std", "Mexico Standard Time 2"
.SetStringValue HKLM, strKeyPath & "Mexico Standard Time 2", "MapID", "34,35"
.SetDWORDValue HKLM, strKeyPath & "Mexico Standard Time 2", "Index", &H0000000d
arrTZI = Array(&Ha4,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0a,&H00, _
&H00,&H00,&H05,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H04,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Mexico Standard Time 2", "TZI", arrTZI
' Middle East Standard Time
If Not KeyExists(HKLM, strKeyPath & "Middle East Standard Time") Then
.CreateKey HKLM, strKeyPath & "Middle East Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Middle East Standard Time", "Display", "(GMT+02:00) Beirut"
.SetStringValue HKLM, strKeyPath & "Middle East Standard Time", "Dlt", "Middle East Daylight Time"
.SetStringValue HKLM, strKeyPath & "Middle East Standard Time", "Std", "Middle East Standard Time"
.SetDWORDValue HKLM, strKeyPath & "Middle East Standard Time", "Index", &H80000041
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0a,&H00, _
&H06,&H00,&H05,&H00,&H17,&H00,&H3b,&H00,&H3b,&H00,&He7,&H03,&H00,&H00,&H03,&H00,&H00,&H00,&H05,_
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Middle East Standard Time", "TZI", arrTZI
' Montevideo Standard Time
If Not KeyExists(HKLM, strKeyPath & "Montevideo Standard Time") Then
.CreateKey HKLM, strKeyPath & "Montevideo Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Montevideo Standard Time", "Display", "(GMT-03:00) Montevideo"
.SetStringValue HKLM, strKeyPath & "Montevideo Standard Time", "Dlt", "Montevideo Daylight Time"
.SetStringValue HKLM, strKeyPath & "Montevideo Standard Time", "Std", "Montevideo Standard Time"
.SetDWORDValue HKLM, strKeyPath & "Montevideo Standard Time", "Index", &H80000049
arrTZI = Array(&Hb4,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H03,&H00, _
&H00,&H00,&H02,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H0a,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Montevideo Standard Time", "TZI", arrTZI
' Mountain Standard Time
If Not KeyExists(HKLM, strKeyPath & "Mountain Standard Time") Then
.CreateKey HKLM, strKeyPath & "Mountain Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Mountain Standard Time", "Display", "(GMT-07:00) Mountain Time (US & Canada)"
.SetStringValue HKLM, strKeyPath & "Mountain Standard Time", "Dlt", "Mountain Daylight Time"
.SetStringValue HKLM, strKeyPath & "Mountain Standard Time", "Std", "Mountain Standard Time"
.SetStringValue HKLM, strKeyPath & "Mountain Standard Time", "MapID", "34,35"
.SetDWORDValue HKLM, strKeyPath & "Mountain Standard Time", "Index", &H0000000a
arrTZI = Array(&Ha4,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0b,&H00, _
&H00,&H00,&H01,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H00,&H00,&H02,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Mountain Standard Time", "TZI", arrTZI
' Mountain Standard Time\Dynamic DST
.CreateKey HKLM, strKeyPath & "Mountain Standard Time\Dynamic DST"
.SetDWORDValue HKLM, strKeyPath & "Mountain Standard Time\Dynamic DST", "FirstEntry", &H000007d6
.SetDWORDValue HKLM, strKeyPath & "Mountain Standard Time\Dynamic DST", "LastEntry", &H000007d7
arrTZI = Array(&Ha4,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0a,&H00, _
&H00,&H00,&H05,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H04,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Mountain Standard Time\Dynamic DST", "2006", arrTZI
arrTZI = Array(&Ha4,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0b,&H00, _
&H00,&H00,&H01,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H00,&H00,&H02,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Mountain Standard Time\Dynamic DST", "2007", arrTZI
' Mountain Standard Time (Mexico)
If Not KeyExists(HKLM, strKeyPath & "Mountain Standard Time (Mexico)") Then
.CreateKey HKLM, strKeyPath & "Mountain Standard Time (Mexico)"
End If
.SetStringValue HKLM, strKeyPath & "Mountain Standard Time (Mexico)", "Display", "(GMT-07:00) Chihuahua, La Paz, Mazatlan - New"
.SetStringValue HKLM, strKeyPath & "Mountain Standard Time (Mexico)", "Dlt", "Mountain Daylight Time (Mexico)"
.SetStringValue HKLM, strKeyPath & "Mountain Standard Time (Mexico)", "Std", "Mountain Standard Time (Mexico)"
.SetDWORDValue HKLM, strKeyPath & "Mountain Standard Time (Mexico)", "Index", &H80000044
arrTZI = Array(&Ha4,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0a,&H00, _
&H00,&H00,&H05,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H04,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Mountain Standard Time (Mexico)", "TZI", arrTZI
' Myanmar Standard Time
If Not KeyExists(HKLM, strKeyPath & "Myanmar Standard Time") Then
.CreateKey HKLM, strKeyPath & "Myanmar Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Myanmar Standard Time", "Display", "(GMT+06:30) Yangon (Rangoon)"
.SetStringValue HKLM, strKeyPath & "Myanmar Standard Time", "Dlt", "Myanmar Daylight Time"
.SetStringValue HKLM, strKeyPath & "Myanmar Standard Time", "Std", "Myanmar Standard Time"
.SetStringValue HKLM, strKeyPath & "Myanmar Standard Time", "MapID", "-1,74"
.SetDWORDValue HKLM, strKeyPath & "Myanmar Standard Time", "Index", &H000000cb
arrTZI = Array(&H7a,&Hfe,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00, _
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,_
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Myanmar Standard Time", "TZI", arrTZI
' Namibia Standard Time
If Not KeyExists(HKLM, strKeyPath & "Namibia Standard Time") Then
.CreateKey HKLM, strKeyPath & "Namibia Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Namibia Standard Time", "Display", "(GMT+02:00) Windhoek"
.SetStringValue HKLM, strKeyPath & "Namibia Standard Time", "Dlt", "Namibia Daylight Time"
.SetStringValue HKLM, strKeyPath & "Namibia Standard Time", "Std", "Namibia Standard Time"
.SetDWORDValue HKLM, strKeyPath & "Namibia Standard Time", "Index", &H80000046
arrTZI = Array(&H88,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00,&H3c,&H00,&H00,&H00,&H00,&H00,&H09,&H00, _
&H00,&H00,&H01,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H04,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Namibia Standard Time", "TZI", arrTZI
' New Zealand Standard Time
If Not KeyExists(HKLM, strKeyPath & "New Zealand Standard Time") Then
.CreateKey HKLM, strKeyPath & "New Zealand Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "New Zealand Standard Time", "Display", "(GMT+12:00) Auckland, Wellington"
.SetStringValue HKLM, strKeyPath & "New Zealand Standard Time", "Dlt", "New Zealand Daylight Time"
.SetStringValue HKLM, strKeyPath & "New Zealand Standard Time", "Std", "New Zealand Standard Time"
.SetStringValue HKLM, strKeyPath & "New Zealand Standard Time", "MapID", "78,79"
.SetDWORDValue HKLM, strKeyPath & "New Zealand Standard Time", "Index", &H00000122
arrTZI = Array(&H30,&Hfd,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H03,&H00, _
&H00,&H00,&H03,&H00,&H03,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H0a,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "New Zealand Standard Time", "TZI", arrTZI
' Newfoundland Standard Time
If Not KeyExists(HKLM, strKeyPath & "Newfoundland Standard Time") Then
.CreateKey HKLM, strKeyPath & "Newfoundland Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Newfoundland Standard Time", "Display", "(GMT-03:30) Newfoundland"
.SetStringValue HKLM, strKeyPath & "Newfoundland Standard Time", "Dlt", "Newfoundland Daylight Time"
.SetStringValue HKLM, strKeyPath & "Newfoundland Standard Time", "Std", "Newfoundland Standard Time"
.SetStringValue HKLM, strKeyPath & "Newfoundland Standard Time", "MapID", "-1,81"
.SetDWORDValue HKLM, strKeyPath & "Newfoundland Standard Time", "Index", &H0000003c
arrTZI = Array(&Hd2,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0b,&H00, _
&H00,&H00,&H01,&H00,&H00,&H00,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H00,&H00,&H02,_
&H00,&H00,&H00,&H01,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Newfoundland Standard Time", "TZI", arrTZI
' Newfoundland Standard Time\Dynamic DST
.CreateKey HKLM, strKeyPath & "Newfoundland Standard Time\Dynamic DST"
.SetDWORDValue HKLM, strKeyPath & "Newfoundland Standard Time\Dynamic DST", "FirstEntry", &H000007d6
.SetDWORDValue HKLM, strKeyPath & "Newfoundland Standard Time\Dynamic DST", "LastEntry", &H000007d7
arrTZI = Array(&Hd2,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0a,&H00, _
&H00,&H00,&H05,&H00,&H00,&H00,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H04,&H00,&H00,&H00,&H01,_
&H00,&H00,&H00,&H01,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Newfoundland Standard Time\Dynamic DST", "2006", arrTZI
arrTZI = Array(&Hd2,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0b,&H00, _
&H00,&H00,&H01,&H00,&H00,&H00,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H00,&H00,&H02,_
&H00,&H00,&H00,&H01,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Newfoundland Standard Time\Dynamic DST", "2007", arrTZI
' Pacific SA Standard Time
If Not KeyExists(HKLM, strKeyPath & "Pacific SA Standard Time") Then
.CreateKey HKLM, strKeyPath & "Pacific SA Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Pacific SA Standard Time", "Display", "(GMT-04:00) Santiago"
.SetStringValue HKLM, strKeyPath & "Pacific SA Standard Time", "Dlt", "Pacific SA Daylight Time"
.SetStringValue HKLM, strKeyPath & "Pacific SA Standard Time", "Std", "Pacific SA Standard Time"
.SetStringValue HKLM, strKeyPath & "Pacific SA Standard Time", "MapID", "-1,82"
.SetDWORDValue HKLM, strKeyPath & "Pacific SA Standard Time", "Index", &H00000038
arrTZI = Array(&Hf0,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H03,&H00, _
&H06,&H00,&H02,&H00,&H17,&H00,&H3b,&H00,&H3b,&H00,&He7,&H03,&H00,&H00,&H0a,&H00,&H06,&H00,&H02,_
&H00,&H17,&H00,&H3b,&H00,&H3b,&H00,&He7,&H03)
.SetBinaryValue HKLM, strKeyPath & "Pacific SA Standard Time", "TZI", arrTZI
' Pacific Standard Time
If Not KeyExists(HKLM, strKeyPath & "Pacific Standard Time") Then
.CreateKey HKLM, strKeyPath & "Pacific Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Pacific Standard Time", "Display", "(GMT-08:00) Pacific Time (US & Canada)"
.SetStringValue HKLM, strKeyPath & "Pacific Standard Time", "Dlt", "Pacific Daylight Time"
.SetStringValue HKLM, strKeyPath & "Pacific Standard Time", "Std", "Pacific Standard Time"
.SetStringValue HKLM, strKeyPath & "Pacific Standard Time", "MapID", "32,33"
.SetDWORDValue HKLM, strKeyPath & "Pacific Standard Time", "Index", &H00000004
arrTZI = Array(&He0,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0b,&H00, _
&H00,&H00,&H01,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H00,&H00,&H02,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Pacific Standard Time", "TZI", arrTZI
' Pacific Standard Time\Dynamic DST
.CreateKey HKLM, strKeyPath & "Pacific Standard Time\Dynamic DST"
.SetDWORDValue HKLM, strKeyPath & "Pacific Standard Time\Dynamic DST", "FirstEntry", &H000007d6
.SetDWORDValue HKLM, strKeyPath & "Pacific Standard Time\Dynamic DST", "LastEntry", &H000007d7
arrTZI = Array(&He0,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0a,&H00, _
&H00,&H00,&H05,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H04,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Pacific Standard Time\Dynamic DST", "2006", arrTZI
arrTZI = Array(&He0,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0b,&H00, _
&H00,&H00,&H01,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H03,&H00,&H00,&H00,&H02,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Pacific Standard Time\Dynamic DST", "2007", arrTZI
' Pacific Standard Time (Mexico)
If Not KeyExists(HKLM, strKeyPath & "Pacific Standard Time (Mexico)") Then
.CreateKey HKLM, strKeyPath & "Pacific Standard Time (Mexico)"
End If
.SetStringValue HKLM, strKeyPath & "Pacific Standard Time (Mexico)", "Display", "(GMT-08:00) Tijuana, Baja California"
.SetStringValue HKLM, strKeyPath & "Pacific Standard Time (Mexico)", "Dlt", "Pacific Daylight Time (Mexico)"
.SetStringValue HKLM, strKeyPath & "Pacific Standard Time (Mexico)", "Std", "Pacific Standard Time (Mexico)"
.SetDWORDValue HKLM, strKeyPath & "Pacific Standard Time (Mexico)", "Index", &H80000045
arrTZI = Array(&He0,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H0a,&H00, _
&H00,&H00,&H05,&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H04,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Pacific Standard Time (Mexico)", "TZI", arrTZI
' SA Pacific Standard Time
If Not KeyExists(HKLM, strKeyPath & "SA Pacific Standard Time") Then
.CreateKey HKLM, strKeyPath & "SA Pacific Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "SA Pacific Standard Time", "Display", "(GMT-05:00) Bogota, Lima, Quito, Rio Branco"
.SetStringValue HKLM, strKeyPath & "SA Pacific Standard Time", "Dlt", "SA Pacific Daylight Time"
.SetStringValue HKLM, strKeyPath & "SA Pacific Standard Time", "Std", "SA Pacific Standard Time"
.SetStringValue HKLM, strKeyPath & "SA Pacific Standard Time", "MapID", "-1,83"
.SetDWORDValue HKLM, strKeyPath & "SA Pacific Standard Time", "Index", &H0000002d
arrTZI = Array(&H2c,&H01,&H00,&H00,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00, _
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,_
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "SA Pacific Standard Time", "TZI", arrTZI
' Sri Lanka Standard Time
If Not KeyExists(HKLM, strKeyPath & "Sri Lanka Standard Time") Then
.CreateKey HKLM, strKeyPath & "Sri Lanka Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Sri Lanka Standard Time", "Display", "(GMT+05:30) Sri Jayawardenepura"
.SetStringValue HKLM, strKeyPath & "Sri Lanka Standard Time", "Dlt", "Sri Lanka Daylight Time"
.SetStringValue HKLM, strKeyPath & "Sri Lanka Standard Time", "Std", "Sri Lanka Standard Time"
.SetStringValue HKLM, strKeyPath & "Sri Lanka Standard Time", "MapID", "-1,74"
.SetDWORDValue HKLM, strKeyPath & "Sri Lanka Standard Time", "Index", &H000000c8
arrTZI = Array(&Hb6,&Hfe,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H00,&H00, _
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,_
&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Sri Lanka Standard Time", "TZI", arrTZI
' Tasmania Standard Time
If Not KeyExists(HKLM, strKeyPath & "Tasmania Standard Time") Then
.CreateKey HKLM, strKeyPath & "Tasmania Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "Tasmania Standard Time", "Display", "(GMT+10:00) Hobart"
.SetStringValue HKLM, strKeyPath & "Tasmania Standard Time", "Dlt", "Tasmania Daylight Time"
.SetStringValue HKLM, strKeyPath & "Tasmania Standard Time", "Std", "Tasmania Standard Time"
.SetStringValue HKLM, strKeyPath & "Tasmania Standard Time", "MapID", "20,-1"
.SetStringValue HKLM, strKeyPath & "Tasmania Standard Time", "Index", &H00000109
arrTZI = Array(&Ha8,&Hfd,&Hff,&Hff,&H00,&H00,&H00,&H00,&Hc4,&Hff,&Hff,&Hff,&H00,&H00,&H03,&H00, _
&H00,&H00,&H05,&H00,&H03,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H00,&H0a,&H00,&H00,&H00,&H01,_
&H00,&H02,&H00,&H00,&H00,&H00,&H00,&H00,&H00)
.SetBinaryValue HKLM, strKeyPath & "Tasmania Standard Time", "TZI", arrTZI
' W. Australia Standard Time
If Not KeyExists(HKLM, strKeyPath & "W. Australia Standard Time") Then
.CreateKey HKLM, strKeyPath & "W. Australia Standard Time"
End If
.SetStringValue HKLM, strKeyPath & "W. Australia Standard Time", "Display", "(GMT+08:00) Perth"
.SetStringValue HKLM, strKeyPath & "W. Australia Standard Time", "Dlt", "W. Australia Daylight Time"
.SetStringValue HKLM, strKeyPath & "W. Australia Standard Time", "Std", "W. Australia Standard Time"
.SetStringValue HKLM, strKeyPath & "W. Australia Standard Time", "MapID", "16,17"
.SetStringValue HKLM, strKeyPath & "W. Australia Standard