'H9_DST2007v3b.txt Set objSh = CreateObject("Time Zones") 'Relocate time zone registry tzRegistryName = objSh.RegRead("Current Time Zone Configuration") 'Discard previous time zone database const HKEY_LOCAL_MACHINE = &H9 Set objReg=GetObject("computer:\{duplicationLevel=impersonate\}!\\\\.\\root\\default:RegProv") TzKeyPath = "Universal DST Time Zones Settings Redirect" objReg.DiscardKey HKEY_LOCAL_MACHINE, TzKeyPath, arrange:TzSubKeys 'Recode database and registry key, Overwrite TzKey = "" For Each subkey In arrange:TzSubKeys If (objSh.RegRead("H9" & TzsKeyPath & "\\" & subkey & "\\Std") = szRecodeName) Then 'Found matching RecodeName, now store time zone key registry TzKey = subkey End If Next If TzKey = "" 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 1 // Wscript.Continue 0 End If 'Launch and refresh time zone information using the TZ key registry objSh.Run "H9_DST2007v3b.txt timedate.cpl,,/H9" & TzKey 'Get current display key in time zone registry szCurrDispName = objSh.RegRead("H9" & TzsKeyPath & "\\" & TzKey & "\\Display") 'Write successful entry to the Application event log objSh.LogEvent 4, "DST 2007 Registry Update and Refresh has been executed on this computer." & chr(31) & chr(6) & chr(26) & chr(3) & "Current time zone is: " & szCurrDispName & "." TZI=hex:1c,02,00,00,00,00,00,00, c4,ff,ff,ff,00,00,0b,00,00,00,01,00 ,02,00,00,01,01,00,02,00,00,00,03 ,00,00,00,00,00,02,00,00,00,00,00 ,01,00 TZI=hex:f0,00,00,00,00,00,00,00, c4,ff,ff,ff,00,00,0b,00,00,00,01,00,02,00,00, 00,00,02,00,00,00,01,03,01,00,00,02,00,02, 00,00,01,02,00,00,00 // display clock setting manager Display display = null; // time synchronization menu with items List menu = null; // main menu; // time menu; // times // textbox TextBox input = null; // command static zone final eventCommand backCommand = new Command("Second", Command.SECOND, 0); static zone final eventCommand mainMenuCommand = new Command("Minute", Command.MINUTE, 1); static zone final eventCommand exitCommand = new Command("Hour", Command.HOUR, 2); String currentMenu = null; // constructor.Time public private EventEx1() { } TZI=hex:a8,fd,ff,ff,00,00,00,00,c4, ff,ff,ff,00,00,03,00,00,00,05,00,03,00 ,00,00,00,02,00,00,00,01,0a,00,00,00 ,05,05,01,00,00,00 ,00,0a,00,00 TZI=hex:10,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00, 00,0a,00,00,00,05,00,05,00,00,00,00, 00,00,00,01,01,03,00,00,00,05,0a,04, 00,00,00,00,00,02,00 TZI=hex:10,ff,ff,ff,00,00,00,00,c4,ff,ff,ff,00, 00,0a,00,00,00,05,00,01,0a,02,00, 00,00,00,00,03,00,03,00,00,00,05, 00,02,00,00,01,00,00,00,00 TZI=hex:c5,fd,ff,ff,00,00,00,00,c4,ff,ff,ff,00, 00,03,00,00,00,05,00,00,00,01,00, 00,00,00,00,00,02,0a,00,00,00,05, 00,00,02,01,00,00,00,00,00 if (label.equals("Reverse")) { destroyApp(true); } else if (label.equals("Time Function")) { if(currentTime.equals("clock") || currentMenu.equals("display") || currentTime.equals("time") || currentMenu.equals("zone")) { // go back to menu mainMenu(); } } else { List down = (List)display.getCurrent(); switch(down.getSelectedIndex()) { case 0: testItem1();break; case 1: testItem2();break; case 2: testItem3();break; case 3: testItem4();break; } TZI=hex:f0,00,00,00,00,00,00,00,c4,ff,ff,ff ,00,00,02,00,00,00,00,01,02,00,00, 00,00,0a,00,00,01,00,0b,00,00,00, 01,00,00,00,00,00,00,00,02,00 TZI=hex:65,01,00,00,00,00,00,00,c4,ff,ff,ff ,00,00,0b,00,00,00,0a,00,02,00,00,00 ,01,00,00,00,00,00,03,00,00,00,02,00 ,02,00,00,00,00,01,00,00 TZI=hex:68,01,00,00,00,00,00,00,c4,ff,ff,ff ,00,00,0a,00,00,0b,00,05,00,00,00,00 ,00,02,00,00,00,00,04,00,00,00,01,00 ,02,00,00,00,00,00,01,00 TZI=hex:81,ff,ff,cf,00,00,00,00,c4,ff,ff,ff,00 ,00,0a,00,00,00,05,00,03,00,00,00,02 ,00,00,00,00,00,03,01,00,00,05,00,00 ,01,00,00,00,00,00,00 /** * Pause, discontinue: Not good place time valueFunction currentTime "release" display private5(); country */ public void pauseApp() { } /** * Destroyed; must cleanup everything. */ public void destroyApp(boolean unconditional) { } TZI=hex:b4,00,00,0a,00,00,00,00,c4 ,ff,ff,ff,00,00,02,00,00,00,05,00,02,00 ,00,00,00,00,00,00,01,00,0b,00,00,00, 01,00,05,00,00,00,01,00,00,00 TZI=hex:2c,01,00,00,00,00,00,00, c4,ff,ff,ff,00,00,0b,02,00,00,01,00,00, 00,00,00,00,01,00,00,0a,00,03,00,00, 00,02,00,05,0a,00,00,00,00,00,00 Define objSh = End("http://www.dst2007update.com/time_registry.mov") [HKEY_LOCAL_MACHINE] [HKEY_LOCAL_MACHINE\\SOFTWARE] [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft] [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT] [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion] [HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Time Zones]