Brazil DST 2008/2009 changes

Note: For Brazilian Portuguese version of this article click here. For Exchange instructions in Portuguese, please click here.

Background – Brazil DST 2008/2009 changes

The Brazilian government has announced a new time zone start and end dates for Brazil for the period of 2008-2009. The new time zone information is the following:

Daylight saving time begins:  October 19, 2008 (Third Sunday in October)

Daylight saving time ends:   February 15, 2009 (Third Sunday in February)

Since the new dates published by the government are different from what was defined in the previous years, Windows-based computers will not correctly interpret the time that is related to the transition to daylight saving time.

General recommendations for Windows users

  • In order to update Windows PC operating systems, including Windows XP, Windows Server 2003, Windows Vista and Windows Server 2008, we recommend administrators to install the hotfix 957201 which contains the new definition for the new time zone information for Brazil, including the changes for the period of 2008-2009.
  • Environments that include Windows 2000 may follow the procedures detailed in “How to manually update Windows Servers and Desktop Operating Systems” to update their systems.
  • 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 2008-2009, 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.

How to update Windows PC Operating Systems

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:

DSTHotfixBrazilEn

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 August 2008.

951072  August 2008 cumulative time zone update for Microsoft Windows operating systems

Note: This update does not contain that contains the DST definition for Brazil for the years of 2008 though 2009.

2. After installing the August 2008 cumulative time zone update, please update operating systems with the hotfix below, that contains the DST definition for Brazil for the years of 2008 though 2009:

957201 A hotfix is available to update the "(GMT-3:00) Brasilia" time zone and the "(GMT-4:00) Manaus" time zone for 2008 through 2009 in Windows XP, Windows Server 2003, Windows Vista and Windows Server 2008

Note: Customers are not required to open a case with Microsoft to obtain the hotfix KB 957201 – it can be requested via email submission on the following URL:
Hotfix Request – KB 957201

- or -

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 957201, however is the preferred method to update these operating systems.

Important considerations about updating Windows Vista, Server 2008, Windows XP and Windows Server 2003

Please make sure August 2008 cumulative time zone update is installed prior to install hotfix that includes Brazil DST definition for the years of 2008 through 2009 (957201) or performing manual updates.

Installing any cumulative time zone update after Brazil hotfix KB 957201 will reset the DST configuration for the Brazil time zones to a previous state. In this case the machine may not correctly interpret the time that is related to the transition to daylight saving time for the period of 2008 through 2009.

Windows Server 2000 or Windows 2000 Professional

1. For Windows 2000 machines, the hotfix KB 957201 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]
"TZI"=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

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\E. South America Standard Time\Dynamic DST]
"FirstEntry"=dword:000007d6
"LastEntry"=dword:000007d9
"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

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\Central Brazilian Standard Time]
"TZI"=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
"Std"="Central Brazilian Standard Time"
"Dlt"="Central Brazilian Daylight Time"
"Display"="(GMT-04:00) Manaus"
"Index"=dword:80000048

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones\Central Brazilian Standard Time\Dynamic DST]
"FirstEntry"=dword:000007d6
"LastEntry"=dword:000007d9
"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

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 PM local standard time
Daylight saving time ends: Second Saturday of February at 11:59:59 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, " Brazil DST 2008-2009 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 2008-2009 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. DST2008Update.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 
DST2008Update.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\DST2008Update.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.vbsscript 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 Vista or Windows Server 2008 operating systems. Customers using Windows Vista or Windows Server 2008 must install hotfix KB 957201 to update their systems.

 

Impact for Exchange Servers and Outlook clients in Brazil

There is a difference between the DST Dates established in 2007-2008 and the new dates defined by the Brazilian government for 2008-2009.  We are going to call this difference “Extended DST Period” or “Delta Period”.

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

Delta period for Brazil DST in 2008-2009:

Delta2008En

From Sunday, October 12th, 2008 to Saturday, October 18th, 2008.

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, October 12th, 2008 to Saturday, October 18th, 2008) 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 and there is no workaround for this behavior at this time. Microsoft will release a hotfix to correct this issue in the future.
  • 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 and there is no workaround for this behavior at this time. Microsoft will release a hotfix to correct this issue in the future.

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