Using External Time Source in Windows
If your computer has a poorly-performing or degrading CMOS battery, it may not keep the clock time properly while switched off.
One method to deal with this situation is to configure Windows to use an external time source.
The automatic Microsoft “Fix It” program sets a default time correction window of 3,600 seconds, or 1 hour. If the time needs advancing more than this, it will be ignored, meaning a machine that is grossly out of date will remain out of date. To cover common scenarios such as a machine that is switched off over a long weekend of four days, set the registry value MaxPosPhaseCorrection under HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config to 345,600.
The Fix It applet asks for the names of some time servers. One suggestion is to specify your local ISP's time server (eg ntp.internode.on.net for Internode), and/or the general-purpose world-wide cluster of time servers via pool.ntp.org, which should resolve to a nearby server. (If you are using a third-party DNS service, you should specify a country-specific server such as au.pool.ntp.org for Australia, uk.pool.ntp.org for United Kingdom etc.)
By default Windows will check the time every 7 days (604,800 seconds). To alter this interval, use a command such as:
reg add HKLM\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient /v SpecialPollInterval /d 3600 /t REG_DWORD /f
In this example, 3600 means 3600 seconds (60 minutes).