Upcoming DST Changes in Brazil – 2009 – 2010 – Fallback


by LATAM DST Taskforce

**See information added on 2/22/2010 at the end**

Disclaimer:  The information in this document is written in response to an announcement by the government of Brazil about changes in the daylight saving time in Brazil for the years of 2008-2009.

The steps provided in this bulletin were created to mitigate the impacts that the daylight saving time changes will cause for customers in Brazil. These are the impacts primarily anticipated at the time this document was written, and the effects that customers may face are not restricted to them.

The suggested actions on this document might receive additional testing. This document contains information about how to modify the registry. Make sure that you back up the registry before you modify it. Make sure that you know how to restore the registry if a problem occurs.

The information described in this document may change without notice.

 

Background – Brazil DST 2009/2010

For the year of 2009/2010, the Brazilian daylight saving time is defined as follows:

  • Daylight Saving Time starts at third Sunday of October at 12:00:00AM
  • Daylight Saving Time ends at third Sunday of February at 12:00:00AM

Since last year, Microsoft implemented a Daylight Saving Time rule for the Windows Operating Systems which contains the following settings for the Brazilian time zones – (GMT -3:00) Brasilia and (GMT -3:00) Manaus:

  • Daylight Saving Time starts at third Saturday of October at 11:59:59.999 PM
  • Daylight Saving Time ends at second Saturday of February at 11:59:59.999 PM

In 2009, the day following the “Second Saturday of February” was the “Third Sunday of February”, thus the Windows Operating Systems time zone rule matched the dates defined by the Brazilian government:

clip_image002

However, in 2010, the day following the “Second Saturday of February” is the “Second Sunday of February”, meaning the current time zone definition in Windows Operating Systems is one week different from the dates defined by the Brazilian government:

clip_image004

Due to the difference explained above, Windows operating systems will not correctly interpret the time that is related to the end of daylight saving time in Brazil (February, 2010).

In addition, on the week of “February 14th – February 20th, 2010”, Exchange and Outlook users may experience calendaring issues – once the operating system is adjusted, appointments created during this week may be one hour off.

Recommendations for Windows users – END of the Brazilian DST – Brazil DST Fallback

  • In order to update Windows PC operating systems, including Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7 and Windows 2008 R2, we recommend administrators to install the hotfix 976098 which contains the new definition for the new time zone information for Brazil, including the changes for the period of 2009-2010.
  • Please do not adjust the machine’s clock manually. This will cause adverse effects on your environment and it is not supported by Microsoft.
  • Before you apply the changes on Windows Operating Systems to reflect the changes in DST for Brazil for the period of 2009-2010, be aware of potential issues that will affect Microsoft Office Outlook and Exchange Server. Please read “Impact for Exchange Servers and Outlook clients in Brazil” sections for more details.

clip_image006

In order to update Windows PC operating systems, you have to evaluate the options available for different operating system versions to update the DST definition for Brazil for the years of 2008 though 2009. Below is a summary of options available to every Windows operating system:

Windows 7, Windows Server 2008 R2, Windows Vista, Windows Server 2008, Windows XP and Windows Server 2003
  1. Install the following hotfix, containing the cumulative time zone update for the countries which announced DST dates up to December 2009.
    976098  December 2009 cumulative time zone update for Microsoft Windows operating systems
  2. For Windows Server 2003 or Windows XP, users may opt to manually update operating systems as detailed in section ‘How to manually update Windows Servers and Desktop Operating Systems’. Installing hotfix 976098, however is the preferred method to update these operating systems.
Windows Server 2000 or Windows 2000 Professional
  1. For Windows 2000 machines, the hotfix KB 976098 will only be available for customers with Extended Hotfix Agreement (EHA). Customers with no EHA can update their Windows 2000 systems via ‘How to manually update Windows Servers and Desktop Operating Systems’ section in this document.        

How to manually update Windows Servers and Desktop Operating Systems

Note:     This section is based on the following article:
914387 – How to configure daylight saving time for Microsoft Windows operating systems

Manually updating Windows servers and desktop operating systems

1. Create a registry file that contains the new DST settings for Brazil, following these steps below:

1.1. Click Start, click Run, type notepad, and then click OK.

1.2. Copy the following registry information, and then paste it into the Notepad document:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\E. South America Standard Time]
"Display"="(GMT-03:00) Brasilia"
"Dlt"="E. South America Daylight Time"
"Std"="E. South America Standard Time"
"MapID"="-1,80"
"Index"=dword:00000041
"TZI"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,3b,\
00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\E. South America Standard Time\Dynamic DST]

"FirstEntry"=dword:000007d6
"LastEntry"=dword:000007f8
"2006"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,00,00,02,00,02,00,\
00,00,00,00,00,00,00,00,0b,00,00,00,01,00,00,00,00,00,00,00,00,00
"2007"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,00,00,05,00,00,00,\
00,00,00,00,00,00,00,00,0a,00,00,00,02,00,00,00,00,00,00,00,00,00
"2008"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,00,00,03,00,00,00,\
00,00,00,00,00,00,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2009"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,02,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2010"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2011"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2012"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,04,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2013"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2014"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2015"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2016"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2017"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,02,00,17,00,3b,00,3b,00,e7,03
"2018"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2019"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2020"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2021"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2022"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2023"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,04,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,02,00,17,00,3b,00,3b,00,e7,03
"2024"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2025"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2026"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2027"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2028"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,02,00,17,00,3b,00,3b,00,e7,03
"2029"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2030"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2031"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2032"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,02,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2033"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2034"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,04,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,02,00,17,00,3b,00,3b,00,e7,03
"2035"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2036"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2037"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2038"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2039"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,04,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2040"=hex:b4,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\Central Brazilian Standard Time]

"Display"="(GMT-04:00) Manaus"
"Dlt"="Central Brazilian Daylight Time"
"Std"="Central Brazilian Standard Time"
"Index"=dword:80000048
"TZI"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,3b,\
00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\Central Brazilian Standard Time\Dynamic DST]

"FirstEntry"=dword:000007d6
"LastEntry"=dword:000007f8
"2006"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,00,00,02,00,02,00,\
00,00,00,00,00,00,00,00,0b,00,00,00,01,00,00,00,00,00,00,00,00,00
"2007"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,00,00,05,00,00,00,\
00,00,00,00,00,00,00,00,0a,00,00,00,02,00,00,00,00,00,00,00,00,00
"2008"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,00,00,03,00,00,00,\
00,00,00,00,00,00,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2009"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,02,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2010"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2011"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2012"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,04,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2013"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2014"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2015"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2016"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2017"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,02,00,17,00,3b,00,3b,00,e7,03
"2018"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2019"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2020"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2021"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2022"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2023"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,04,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,02,00,17,00,3b,00,3b,00,e7,03
"2024"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2025"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2026"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2027"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2028"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,02,00,17,00,3b,00,3b,00,e7,03
"2029"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2030"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2031"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2032"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,02,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2033"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2034"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,04,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,02,00,17,00,3b,00,3b,00,e7,03
"2035"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2036"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2037"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2038"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2039"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,04,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03
"2040"=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff,00,00,02,00,06,00,03,00,17,00,\
3b,00,3b,00,e7,03,00,00,0a,00,06,00,03,00,17,00,3b,00,3b,00,e7,03

 

1.3. On the File menu, click Save As.

1.4. Select a destination, and then type TZupdate.reg in the File name box. 

1.5. In the Save as type box, click All Files, and then click Save.

2. Import this registry key on target machines by double clicking in the TZupdate.reg and clicking ‘Yes’ when prompted. All machines (clients and servers) must be updated with this registry information.

3. In order to deploy these time zone changes in a corporate environment, you can use a startup script as described in the session “Deploy the registry file with the new DST information using Group Policy” below.

Note:     The registry settings above contain the following information for the “(GMT-03:00) Brasilia” time zone:
Daylight saving time begins: Third Saturday of October at 11:59:59.999 PM local standard time
Daylight saving time ends: Third Saturday of February at 11:59:59.999 PM local daylight saving time

Use a script to reload the TimeZoneInformation registry key

Time zone information is stored in two locations. We need to make sure these locations are updated. Importing the TZupdate.reg file updates the time zone database in the registry. Next, you must create a script that updates the time zone information registry key in the CurrentControlSet. You can deploy this script by using Group Policy or another deployment mechanism.

The script identifies the current time zone of the client computer and then reloads the Time Zone Information registry key with the updated information from the time zone database. Then, the script writes an event to the Application log of the client computer where the script was run.

1. Click Start, click Run, type notepad, and then press ENTER.

2. Copy the following code, and then paste it into the Notepad document:

Set objSh = CreateObject("WScript.Shell")

‘Get the StandardName key of the current time zone

szStandardName = objSh.RegRead("HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation\StandardName")

‘Enumerate the subkeys in the time zone database

const HKEY_LOCAL_MACHINE = &H80000002

Set objReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv")

szTzsKeyPath = "SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones"

objReg.EnumKey HKEY_LOCAL_MACHINE, szTzsKeyPath, arrTzSubKeys

‘Step through the time zones to find the matching Standard Name

szTzKey = "<Unknown>"

For Each subkey In arrTzSubKeys

If (objSh.RegRead("HKLM\" & szTzsKeyPath & "\" & subkey & "\Std") = szStandardName) Then

‘Found matching StandardName, now store this time zone key name

szTzKey = subkey

End If

Next

If szTzKey = "<Unknown>" Then

‘Write entry to the Application event log stating that the update has failed to execute

objSh.LogEvent 1, "DST 2007 Registry Update and Refresh failed to execute on this computer. Time zones failed to enumerate properly or matching time zone not found."

Wscript.Quit 0

End If

Dim process, processid, result, strUpdateCommand

Set process = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2:Win32_process")

‘Add time change privilege to the process object

process.Security_.Privileges.AddAsString "SeSystemTimePrivilege",True

strUpdateCommand = "control.exe timedate.cpl,,/Z" & szTzKey

‘Launch control.exe to refresh time zone information using the TZ key name obtained above

result = process.create(strUpdateCommand,Null,Null,processid)

If result <> 0 Then

objSh.LogEvent 1, "Brazil DST 2008-2009 Registry Update and Refresh failed to execute on this computer. Unable to refresh the Timezone database."

Wscript.Quit 0

End If

‘Get current display name of refreshed time zone

szCurrDispName = objSh.RegRead("HKLM\" & szTzsKeyPath & "\" & szTzKey & "\Display")

‘Write entry to the Application event log stating that the update has executed

objSh.LogEvent 4, "Brazil DST 2009-2010 Registry Update and Refresh has been executed on this computer." & chr(13) & chr(10) & chr(13) & chr(10) & "Current time zone is: " & szCurrDispName & "."

3. On the File menu, click Save As.

4. Select a destination, and then type “refreshTZinfo.vbs” in the File name box.

5. In the Save as type box, click All Files, and then click Save.

6. Double click in the refreshTZinfo.vbs to refresh time zone information.

Note:       Microsoft provides programming examples for illustration only, without warranty either expressed or implied. This includes, but is not limited to, the implied warranties of merchantability or fitness for a particular purpose. This article assumes that you are familiar with the programming language that is being demonstrated and with the tools that are used to create and to debug procedures. Microsoft support engineers can help explain the functionality of a particular procedure. However, they will not modify these examples to provide added functionality or construct procedures to meet your specific requirements.

Deploying DST modifications using Group Policy

1. Click Start, click Run, type notepad, and then press ENTER. 

2. Copy the following code, and then paste it into the Notepad document.

@echo off

regedit /s \\contoso.com\NETLOGON\TZupdate.reg
ver |find /i "6.0">nul
IF %errorlevel% EQU 0 GOTO end
cscript \\contoso.com\NETLOGON\refreshTZinfo.vbs

:end

Note:     You must replace the \\contoso.com notation above with the actual DNS domain name for your Active Directory domain.

3. On the File menu, click Save As.

4. DST2010Update.cmd in the File name box. 

5. In the Save as type box, click All Files, and then click Save. 

6. Copy the following files to the Netlogon share folder of the domain controller that holds the PDC emulator role in the domain:

TZupdate.reg 
DST2010Update.cmd
refreshTZinfo.vbs

7. Wait until Active Directory replication occurs. Also, wait until the files and folders in the system volume (SYSVOL) shared folder replicate to domain controllers in the domain. 

8. Click Start, click Run, type control admintools, and then click OK. 

9. Double-click Active Directory Users and Computers

10. Select an Organizational Unit (OU) which contains the computers that you want to apply this script to. In this example, we will use an OU that is named DST-COMPUTERS. This example also assumes that this OU contains computer accounts.

11. Right-click the DST-COMPUTERS OU and then click Properties. 

12. Click the Group Policy tab, click New, type DST Registry Update, and then press ENTER. 

13. Click Edit. The Group Policy Object Editor tool starts.

14. Expand Computer Configuration, expand Windows Settings, and then click Scripts (Startup/Shutdown). 

15. Double-click Startup, and then click Add. 

16. In the Script Name box, type the universal naming convention (UNC) path of the DST2008Update.cmd file that is located in the Netlogon share. For example, type \\contoso.com\NETLOGON\DST2010Update.cmd. 

17. Click OK two times. 

Note:     Client computers that are within the DST-COMPUTERS organizational unit will run the startup script the next time the machine starts up, meaning all machines needs to be restarted to be able to recognize the new DST configuration via Startup script.

Important information about procedures described in this section:
  • The instructions above can be applied on Windows 2000, Windows XP and Windows Server 2003 Operating systems, however after performing these instructions on a Windows 2003 operating system; the current time zone may not be updated. In this case you may need to restart the machine or run the refreshTZinfo.vbs script manually.
  • After updating the operating systems using the procedures above, the display name for the “(GMT-4:00) Manaus” time zone will be shown as “Central Brazilian Standard Time” or “Central Brazilian Daylight Time” even for non-English operating systems. This happens because by default, Windows 2000 machines does not have a time zone definition for “(GMT-4:00) Manaus” time zone, therefore, the registry keys above includes all properties for this time zone, including the display names.
  • The manual instructions above are not supported on Windows 7, Windows Server 2008 R2, Windows Server 2008 e Windows Vista operating systems. Customers using Windows 7, Windows 2008 R2, Windows Server 2008 and Windows Vista must install hotfix KB 976098 to update their systems.

 

Impact for Exchange Servers and Outlook Clients in Brazil

In 2009, the day following the “Second Saturday of February” was the “Third Sunday of February”, thus the Windows Operating Systems time zone rule matched the dates defined by the Brazilian government. However, in 2010, the day following the “Second Saturday of February” is the “Second Sunday of February”, meaning the current time zone definition in Windows Operating Systems is one week different from the dates defined by the Brazilian government. Due to this difference, Windows operating systems will not correctly interpret the time that is related to the end of daylight saving time in Brazil (February, 2010). We are going to call this difference “Extended DST Period” or “Delta Period”.

For the year 2009-2010, we have a delta period at the end of the DST as follows:

Delta period for Brazil DST in 2009-2010:
clip_image008
From Sunday, February 14th, 2010 to Saturday, February 20th, 2010.

The inconvenience experienced by Outlook client users happens for all appointments during the delta period that were created before the administrators update the DST dates on the operating system.

Those appointments will be off 1 hour. This may happen for both recurring and single-instance appointments.

The appointments created after the DST dates have been updated on the operating system will have the correct time.

 

Why do we experience this behavior?

To answer this question, we need to understand how Outlook schedule meetings and appointments:

Three factors affect the scheduling of a meeting and appointment in Outlook:

  • The computer’s clock setting (time).
  • The computer’s local time zone setting.
  • The computer’s daylight saving time adjustment setting.

Outlook time stamps the message request with the Greenwich Mean Time for the meeting. Outlook calculates Greenwich Mean Time by using the computer’s clock time, plus or minus the local time zone adjustment, minus (depending upon the time of year) the daylight-saving time adjustment.

As soon as Outlook receives the meeting request it will calculate the meeting time for the recipient and schedule it on the calendar. If any of the three factors listed earlier are incorrect at that time, the meeting time will be incorrect. You cannot correct the time after the fact by correcting the factor in error; you must open the meeting request and manually correct the scheduled time.

 

What can I do to fix appointments on the delta period?
  • Manually modify each appointment on the affected week (From Sunday, February 14th, 2010 to Saturday, February 20th, 2010) after the operating system time zone has been changed. This is the preferred and recommended method for most users.

– or –

  • Some customers may use the "Outlook Time Zone Data Update Tool version 3.0" or "Exchange Calendar Update Tool" to fix appointments stamped with time zone information. However these customers should consider, case by case, how effective the tool may be for their environment. See "Important considerations" sections below.

How to manually modify Outlook calendar items?

1. Start Outlook, and then open the Outlook calendar.

2. Manually move each meeting that you organized so that they occur at the correct time.

3. Send an update for each meeting that you moved to the meeting attendees. This action causes the calendar for each attendee to display the correct time for the meeting.

4. Manually move each single-instance appointment.

5. Manually move all recurring appointments that occur in the extended DST period.

 

Important considerations about the "Outlook Time Zone Data Update Tool version 3.0"

The Outlook Time Zone Data Update Tool version 3.0 "partially" addresses the issues with calendar items on the DST period for Brazil. Under specific scenarios, the tool allows individual users to move the appointments during the delta period to its original time.

For Brazil, the Outlook Time Zone Data Update Tool 3.0 correctly detects and rebases all items that have a time zone definition stamped on them. These include the following:

  • All items that were created by using Office Outlook 2003 Service Pack 3 or later versions (i.e. Outlook 2007).
  • Recurring items that were created by using any version of Office Outlook
  • Recurring items that were created by using any version of Outlook Web Access.
  • Recurring items that were created by using Outlook Mobile.
  • Single instance items that were created by using iCalendar (iCal) or Outlook Web Access for Exchange Server 2007.

Some versions of Microsoft Outlook, of Outlook Mobile, of Outlook Web Access, of Microsoft Office SharePoint Server, and of Windows SharePoint Services do not stamp time zone properties on some calendar item types. Without this data, the Outlook Time Zone Data Update Tool is likely to rebase calendar items incorrectly for time zones where the time zone definitions have changed partway through a particular year – this is the case for any Brazil time zone ((GMT-3:00) Brasilia and (GMT-4:00) Manaus).

For Brazil, the Outlook Time Zone Data Update Tool 3.0 might incorrectly rebase any item that does not have a time zone definition stamped on it. These include the following:

  • Single instance items that were created by using Office Outlook 2003 Service Pack 2 and earlier versions.
  • Single instance items that were created by using Outlook Mobile.
  • Single instance items that were created by using Outlook Web Access for Exchange Server 2003.
  • Single instance items that were created by using Office SharePoint Server and Windows SharePoint Services.

If you fall under the scenarios where the rebasing is unable to correctly update the items, the recommendation is to manually correct the appointments during the delta period.

We always recommend checking your individual calendar and any calendars for which you are responsible during the applicable extended DST period before any changes are made.

Before you decide to use Outlook Time Zone Data Update Tool 3.0, you should consider, case by case, how effective the tool may be for your environment.

If you decide to run this tool on your calendar, print your calendar before any changes are made, and then review the calendar items to make sure these items appear at the correct times. You can use this reference copy of the calendar items to verify that Outlook has been updated successfully.

More information:

957498 Outlook Time Zone Data Update Tool 2.0 and earlier versions of this tool do not correctly rebase any calendar item that was created in the Brasilia time zone

Important considerations about the "Exchange Calendar Update Tool”

You may use the “Microsoft Exchange Calendar Update Configuration Tool”. This tool allows administrators to move the appointments of all users in a centralized way.

Nevertheless, you should carefully consider how effective the tool may be for your environment, especially if your organization uses a mix of clients to create calendar items, such as Outlook 2003 Service Pack 2 or earlier versions, Outlook Web Access for Exchange 2003, Outlook Mobile.

As explained on KB 957498, the tool is unable to rebase single instances appointments when the time zone information is not stamped, thus you will not know which items were not updated.

Running the Exchange Calendar Update tool is a complex procedure. You should carefully consider, how effective the tool may be for your environment. If you decide to run this tool on your Exchange Server, request users to print their calendar before any changes are made, and then review the calendar items to make sure that these items appear at the correct times.

Where can I find step-by-step instructions on how to use the rebasing tools?

  • Step by step instructions on how to use the Outlook Time Zone Data Update 3.0 can be found here.
  • Step by step instructions on how to use the Exchange Calendar Update tool can be found here.

What is the best time to update my calendar?

The best time to update your calendar items is as soon as you have changed your time zone settings in your operating system and before any new calendar item is created, accepted or sent.

May I use the Outlook Time Zone Data update Tool version 2.0 to update my calendar?

Microsoft Office Outlook Time Zone Data Update Tool 2.0 and earlier versions of this tool do not correctly rebase any calendar item that was created in the Brasilia or Manaus time zones. Because of limitations in Outlook Time Zone Data Update Tool 2.0 and earlier versions, rebasing for the Brasilia time zone is not supported.

This issue occurs because Outlook Time Zone Data Update Tool 2.0 and earlier versions do not support time zone definitions that change partway through a particular year.

Recommendations to minimize the impacts on Outlook/Exchange:

  • Simulate the changes on a lab environment, so you know what will happen and what to expect.
  • Work in conjunction with the operating system team to update the DST dates as soon as possible to minimize the chance of users creating new appointments during the delta period before the operating system DST dates get updated.
  • Before doing any change on the DST information, request the users to print their schedule so they have a reference to follow in order to manually update the appointments later if needed.
  • Take a full online backup of your Exchange Servers in case you decide to use the Exchange Calendar Update Tool.
  • For the meetings with multiple attendees only the meeting requestor should update the time and send the update to the others.
  • Include the time of the meeting in the e-mail request so that invitees can double check the correct meeting time (such as, "Project brainstorming – 11:00 A.M. Brasilia Time").
  • Exercise caution with the appointments and meetings in the extended DST period. When in doubt, verify the correct time with the organizer.

Additional known issues for Exchange Server and Outlook clients

  • Meeting invitations sent by Outlook clients between different Exchange 2000/2003 organizations may be off by 1 hour. This is related to the CDO components in Exchange. Microsoft released hotfix 977720 to update the CDO for Exchange 2003 SP2
  • Calendar items generated in Outlook client will display off by 1 hour when they are opened in Outlook Web Access 2003 during the Delta period. However they display correctly on the Outlook calendar view. This display issue is related to CDO components in Exchange. Microsoft released hotfix 977720 to update the CDO for Exchange 2003 SP2

More information about Outlook and Exchange

If you need more information, you can refer to the following Microsoft articles:

  • 957498 – Outlook Time Zone Data Update Tool 2.0 and earlier versions of this tool do not correctly rebase any calendar item that was created in the Brasilia time zone
  • 943390 – Some Outlook calendar items are rebased incorrectly when you use the Outlook Time Zone Data Update Tool to adjust for daylight saving time changes in certain time zones
  • 941018 – How to address daylight saving time by using the Exchange Calendar Update Tool
  • 934001 – A troubleshooting guide to the Exchange Calendar Update Tool (Msextmz.exe)
  • 931667 – How to address time zone changes by using the Time Zone Data Update Tool for Microsoft Office Outlook
  • 195900 – How Outlook handles time zones for meeting requests 

**

  • When you apply the KB976098 a restart is not required for the operating system but some applications or services may require a restart to refresh the time zone information.
  • On Exchange 2007 any changes on time zones may require a restart of the Microsoft Exchange Transport Services (this is described on the KB960963) and sometimes the Mail Submission service needs to be restarted as well.

**

Comments (1)

  1. Anonymous says:

    Great article! Very useful info 😉