The optimised version by Laszlo (for Windows 98 & Windows 2000 ) * Code Updated : 30-Nov-2006 *
UrlDownLoadToFile [color=blue]http://132.163.4.101:14[/color], %A_ScriptDir%\$.time If (ErrorLevel) { MsgBox Time Server is not available ExitApp } FileReadLine x, %A_ScriptDir%\$.time, 2 VarSetCapacity(T,16,0) DllCall("RtlFillMemory", UInt,&T, UInt,1, UChar, 20 SubStr(x,7,2)) DllCall("RtlFillMemory", UInt,&T+1, UInt,1, UChar,(20 SubStr(x,7,2))>>8) DllCall("RtlFillMemory", UInt,&T+2, UInt,1, UChar,SubStr(x,10,2)) DllCall("RtlFillMemory", UInt,&T+6, UInt,1, UChar,SubStr(x,13,2)) DllCall("RtlFillMemory", UInt,&T+8, UInt,1, UChar,SubStr(x,16,2)) DllCall("RtlFillMemory", UInt,&T+10,UInt,1, UChar,SubStr(x,19,2)) DllCall("RtlFillMemory", UInt,&T+12,UInt,1, UChar,SubStr(x,22,2)) DllCall("SetSystemTime", Str,T) PostMessage 0x1E,,,,ahk_class Shell_TrayWnd Return
Note: SubStr() requires AHK v1.0.46+. See the original post for an older version of the above script
** Time Servers **
[*:5trqv93t] http://132.163.4.101:13
[*:5trqv93t] http://132.163.4.101:14
[*:5trqv93t] http://132.163.4.102:13
[*:5trqv93t] http://132.163.4.102:14
[*:5trqv93t] http://132.163.4.103:13
[*:5trqv93t] http://132.163.4.103:14
[*:5trqv93t] http://207.126.98.204:14
[*:5trqv93t] http://131.107.1.10:13
[*:5trqv93t] http://129.6.15.28:13
[*:5trqv93t] http://129.6.15.29:13
[*:5trqv93t] http://128.138.140.44:13
[*:5trqv93t] http://192.43.244.18:13
[*:5trqv93t] http://69.25.96.13:13
[*:5trqv93t] http://216.200.93.8:13
[*:5trqv93t] http://208.184.49.9:13
[*:5trqv93t] http://207.200.81.113:13
[*:5trqv93t] http://64.236.96.53:13
[*:5trqv93t] http://68.216.79.113:13
The following is for WIN XP
;The Automatically synchronize checkbox should be checked in the Control Panel / Date and Time / Internet Time window Run RunDll32.exe shell32.dll`,Control_RunDLL timedate.cpl WinWaitActive Date and Time Properties ahk_class #32770 Send ^{TAB 2}!u{Enter}
Edit: 18-Feb-2006 : To preserve the continuity of this topic, my original code is provided as a Text File
Regards, [/list]