C++设置系统时间及系统时间网络更新的方法
本文实例讲述了C++设置系统时间及系统时间网络更新的方法。分享给大家供大家参考。具体实现方法如下:
//根据返回的时间设置系统时间
voidsetTimeFromTP(ULONGulTime)
{
FILETIMEft;
SYSTEMTIMEst;
//将基准时间转换成windows文件时间
st.wYear=1900;
st.wMonth=1;
st.wDay=1;
st.wHour=0;
st.wMinute=0;
st.wSecond=0;
st.wMilliseconds=0;
SystemTimeToFileTime(&st,&ft);
LONGLONG*pLLong=(LONGLONG*)&ft;
*pLLong+=(LONGLONG)10000000*ulTime;
FileTimeToSystemTime(&ft,&st);
::SetSystemTime(&st);
}
voidmain()
{
CInitSockinitSock;
SOCKETs=::socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
if(s==INVALID_SOCKET)
{
printf("socketerror...");
return;
}
sockaddr_inservAddr={0};
servAddr.sin_family=AF_INET;
servAddr.sin_port=::htons(37);
servAddr.sin_addr.S_un.S_addr=::inet_addr("69.25.96.13");//别用210.72.145.44这个IP,这是天朝的常TMD不返回值
if(SOCKET_ERROR==::connect(s,(sockaddr*)&servAddr,sizeof(servAddr)))
{
printf("connecterror..");
return;
}
//接收时间
ULONGulTime=0;
intnRecv=::recv(s,(char*)&ulTime,sizeof(ulTime),0);
if(nRecv>0) //收到数据
{
ulTime=::ntohl(ulTime);
setTimeFromTP(ulTime);
}
else
{
printf("recverror...");
return;
}
::closesocket(s);
printf("*******************************");
getchar();
}
希望本文所述对大家的C++程序设计有所帮助。
热门推荐
10 香港老妈结婚祝福语简短
11 毕业立体贺卡祝福语简短
12 简短新年年会祝福语
13 评论小品祝福语大全简短
14 恭喜师兄结婚祝福语简短
15 员工集体辞职祝福语简短
16 高中新生祝福语 简短
17 装修祝福语男生搞笑简短
18 生日开业蛋糕祝福语简短