首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

怎么编写代码用国家授时中心服务器对本地电脑进行时间校准

2012-12-31 
如何编写代码用国家授时中心服务器对本地电脑进行时间校准如题[解决办法]void __fastcall TForm1::Button1

如何编写代码用国家授时中心服务器对本地电脑进行时间校准
如题
[解决办法]



void __fastcall TForm1::Button1Click(TObject *Sender)
{
   //indy里的TidTime
  IdTime1->Host = "129.6.15.28";
  ShowMessage(DateTimeToStr(IdTime1->DateTime));
}
//---------------------------------------


[解决办法]
本帖最后由 ccrun 于 2010-11-27 12:12:40 编辑 用Indy组件提供的IdSNTP组件,注意是IdSNTP组件。

在窗体上添加一个TIdSNTP组件,然后:
IdSNTP1->Host = "210.72.145.44";
IdSNTP1->ReceiveTimeout = 3000;
bool bSuccess = IdSNTP1->SyncTime();

ShowMessage(String().sprintf("较时%s", bSuccess? "成功": "失败"));


[解决办法]
提供较时服务的服务器有时可能连接不上或者较时失败,换另外的较时服务器再试,比如time.windows.com等等。

IdSNTP组件的SyncTime方法,是从较时服务器上获取正确的时间,然后自动修改本地的时间。用其他的组件还需要再多一个设置时间的操作,这个时间是有误差的。
[解决办法]
我的Windows 7就用系统默认的time.windows.com来自动较时,不过有时也会失败。

热点排行