我想同步Windows和Linux时钟。Windows获取系统时钟(通过GetSystemTimeAsFileTime函数)并将其发送到Linux。然后,Linux相应地设置它的时钟(使用settimeofday函数)。
我还需要传输Windows的时区,并将其转换为Linux标准。如何在C++中获取Windows的时区?
祝你好运,穆斯塔法
发布于 2011-08-15 16:35:11
GetTimeZoneInformation可能就是您要找的东西。
发布于 2014-03-12 04:08:01
即使不是同步到标准时间,而是同步到机器之间的时间,也应该使用NTP。
NTP是一个成熟的、健壮的协议,它已经解决了你将要发现或已经发现的所有问题:发现、通信传输、延迟和抖动、时区差异、管理漂移,这样你就不会混淆共享同一机器的其他进程,实际上设置正确的时间,权限等等。
只需在您想要作为主服务器的机器上设置NTP服务器,然后在另一台机器上设置NTP客户端,查询主服务器。简单而无痛。
自从我设置NTP服务器以来,已经有一段时间了;我假设您可以使用操作系统的标准NTP实用程序来完成这项工作,只需最少的配置,只要您拥有计算机上的管理员权限。
发布于 2013-10-23 05:23:51
GetDynamicTimeZoneInformation是更有用的函数。它还提供了时区的注册表项。
http://msdn.microsoft.com/en-us/library/windows/desktop/ms724318(v=vs.85).aspx
https://stackoverflow.com/questions/7062984
复制相似问题