我有两台通过局域网连接的PC。当用户更改时间(通过我的应用程序)时,我希望第二个时间也更新(或者第二台机器可以轮询第一台机器)。没有服务器,没有互联网。什么是最好的方法来做到这一点?通过TCP/IP在两台PC之间同步时间,没有服务器
操作系统:XP嵌入式。
Framework:.Net 3.5
我有两台通过局域网连接的PC。当用户更改时间(通过我的应用程序)时,我希望第二个时间也更新(或者第二台机器可以轮询第一台机器)。没有服务器,没有互联网。什么是最好的方法来做到这一点?通过TCP/IP在两台PC之间同步时间,没有服务器
操作系统:XP嵌入式。
Framework:.Net 3.5
如果你不能使用NTP服务器,你必须自己编写它。
如果您并不需要太多的精度就完成了。如果您需要更高的精确度,则需要估计数据发送和到达之间的时间损失,并不是微不足道的。
低技术的解决方案可能是需要更新的机器上执行命令NET TIME \\[OtherPC] /SET
。
你可能对机器进行设定在一定的时间间隔来调用它。
请注意,我只是试图在正常的Windows机器,但我认为这也将工作嵌入。
编辑:围绕它看起来像XP嵌入式可能支持WMI,如果它和它确实有Win32_OperatingSystem类和它的SetDateTime方法,你的应用程序可以打这个电话给远程PC,你可以避免必须轮询变化。
谢谢,我会给他们一个尝试 – Benjol 2010-11-29 14:53:00
是否可以指定机器为NTP服务器的一个?因此使用标准的NTP服务器系统,因此您不必编写自己的。
虽然我不熟悉的XPe此链接Got the time?似乎拥有所有必需的流行语
西蒙娜:嗯,估计时间上的损失,你可以做平。 (两台局域网连接的计算机的平均ping数是相当小的) – Patrick 2010-11-29 14:20:29