偶有一老掉牙鸡,时间经常走不准,搞得偶好几次误时。火来了,偶上网找了下资料,做了这工具。既可从互联网授时服务器上获取时间,也可以从局域网授时主机上获取时间,来校对本鸡,也可为局域网内其他鸡授时。当本工具授时时,获取时间的演示代码如下:
procedure TForm1.Button4Click(Sender: TObject);
var vii,vij:Integer;
vdt:TDatetime;
begin
self.IdTCPClient1.Host := '127.0.0.1'; // 局域网内提供授时服务的主机IP地址
self.IdTCPClient1.Port := 1301; // 授时服务器的端口
self.IdTCPClient1.Connect();
vii := self.IdTCPClient1.ReadInteger();
viJ := self.IdTCPClient1.ReadInteger();
vdt := (vii + vij / 100000000) / 1000;
label1.Caption := datetimetostr(vdt);
self.IdTCPClient1.Disconnect;
end;