这个问题的根源在于OSX和Windows将CMOS的时间处理成我们可见的系统时间的方法是不一样的。Windows认为CMOS时间就是系统时间,OSX认为CMOS时间是Coordinated Universal Time世界标准时间,系统时间是CMOS时间加上时区偏移量计算出来的时间。理论上讲,OSX的处理方法更科学,修改时区的时候可以避免修改CMOS时间。
终极解决方案就是,让Windows也采用与OSX一直的处理方法,WIndows XP以上的系统其实是默认支持这种方法的,修改注册表就可以搞定。运行regedit,找到HKEY_LOCAL_MACHINE\SYSTEM\ControlSet,注意,系统里面可能有多个ControlSet,例如ControlSet001、ControlSet002、CurrentControlSet等,每个都要改。进入一个ControlSet,打开Control\TimeZoneInformation,右键new一个DWORD,名字是RealTimeIsUniversal,值是1。所有的ControlSet都如此搞定之后,重启机器,搞定。
以上方法(via)只适合对注册表有一定了解的高级用户,菜鸟请勿尝试,否则后果自负。
牛啊,我正犯愁我的兼容问题哪,先顶了再看,崇拜
披着羊皮的狼
2007/02/07 19:54
才看到后果自负,有啥后果?重新装机还是重新买机?
披着羊皮的狼
2007/02/07 19:55
重新装机
Datou
2007/02/07 20:07
OSX + Win2k3
照着改了…Win下的时间仍然不对…
就直接显示BIOS内的时间了, 头疼 *sigh
dNKROZ
2007/02/25 17:18
这个undocument hack工作完全不正常, 只是某几程序自身访问这个设置, 不是API读取的设置.
设置完马上更新时间当时是一致的, 进位和换时后都会错掉.
看起来很有技术含量和粗暴修改注册表的Quick n dirty的快感, 止一白痴做法而已
终极其实还是看起来很傻的0时区….
曾半仙
2007/03/27 20:21