CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  网络编程

如何获取网络时间?

楼主hudan(路弯弯其不好走兮,吾将上下而求索)2004-05-01 00:07:37 在 VC/MFC / 网络编程 提问

 
                                                            祝大家五一节快乐!  
   
  我想要一段获取网络时间的代码,来同步本地的机器时间  
  若没有代码,思路也可以的  
   
  搜索了很长时间,没有答案  
  ntp(RFC   1305)看了半天,看不懂  
   
   
  望高手指点!  
   
  问题点数:100、回复次数:33Top

1 楼w3guy(何去何从)回复于 2004-05-01 02:15:58 得分 1

W2K/XP   下有同步机器时间的service,   不知道98下有没有。  
  下面   这个是ntp的一个实现,应该有你要的东西:  
  http://www.ntp.org/downloads.htmlTop

2 楼yhqs540(Reich)回复于 2004-05-01 20:26:39 得分 1

根据网络标准和时钟来判断呢?  
  序列号   每0.5s增加64000Top

3 楼hudan(路弯弯其不好走兮,吾将上下而求索)回复于 2004-05-05 17:55:21 得分 0

to   w3guy(何去何从):  
      这个url不能下载  
   
  to     yhqs540(18岁的我还在哭)  
      你是不是还没有讲完,请继续  
   
  to   all  
      各位大虾,请出招!Top

4 楼hudan(路弯弯其不好走兮,吾将上下而求索)回复于 2004-05-06 00:16:00 得分 0

知道不知道,请说句话,来者有分Top

5 楼sharkhuang(走吧走吧!人总会慢慢长大~)回复于 2004-05-06 10:54:16 得分 1

ntp有自己的协议啊Top

6 楼Sander()回复于 2004-05-06 15:32:03 得分 1

我不知道对不对?  
  传送server时间到client,   比对当前local   time,   传n次。  
  取平均值   nTransmitTime   =   (server   time-client   time)/n.  
  client   time   =   server   time   +   nTransmitTime;  
  Top

7 楼hudan(路弯弯其不好走兮,吾将上下而求索)回复于 2004-05-06 21:51:59 得分 0

to     Sander()   :  
  我不需要很精确的时间,误差几分钟都可以的,如果这样的话,有没有简单的办法得到Top

8 楼wangle11111(wangle)回复于 2004-05-07 01:21:33 得分 1

我看了一先,SNTP-简单网络时间协议,,  
   
  你可以自定义一个   它的包。。然后用UDP的套接字将它发给一个时间服务器,当然了,要知道这个服务器的地址。  
   
  Top

9 楼Sander()回复于 2004-05-07 09:11:40 得分 0

我上面的方法不简单吗?Top

10 楼jszj(老板说mis部不是赚钱的部门...)回复于 2004-05-07 09:22:16 得分 1

误差几分钟都可以的  
  -----------------------------------  
  那用tcp传输过来不就可以了吗?Top

11 楼hudan(路弯弯其不好走兮,吾将上下而求索)回复于 2004-05-07 18:01:08 得分 0

to   Sander()    
  传送server时间到client,   比对当前local   time,   传n次  
  -----------------------------------  
   
  你的方法听起来是很不错,可是我没有Server,怎么传?  
  能不能贴点代码出来(由于我是比较笨,不要见笑)?Top

12 楼wangle11111(wangle)回复于 2004-05-07 21:38:46 得分 1

我晕。。没有server   。。。。  
   
  to:SANDER   :   你没有考虑往返延时吧。。。Top

13 楼zxs790501(沧海一粟)回复于 2004-05-07 22:27:24 得分 1

你留下e-mail  
  我有源代码..............Top

14 楼zxs790501(沧海一粟)回复于 2004-05-07 22:34:04 得分 0

你mail给我  
  我明天回复Top

15 楼hudan(路弯弯其不好走兮,吾将上下而求索)回复于 2004-05-07 22:40:45 得分 0

to   zxs790501:  
   
  my   Email   :         hudande@sohu.com  
   
  Thank   you!  
   
  Top

16 楼hudan(路弯弯其不好走兮,吾将上下而求索)回复于 2004-05-07 22:43:30 得分 0

to   zxs790501(沧海一粟)    
   
  你mail给我  
  我明天回复  
  ------------------------------  
   
  我往那里mail?Top

17 楼frysc(挨踢忍踩)回复于 2004-05-08 13:48:50 得分 1

我有源代码,给我你的E-Mail.Top

18 楼hudan(路弯弯其不好走兮,吾将上下而求索)回复于 2004-05-09 00:47:59 得分 0

to   frysc(挨踢忍踩)  
   
  我的EMail是:hudande@sohu.com  
   
  哪位热心人有代码的话发一份给我,万分感激Top

19 楼wangle11111(wangle)回复于 2004-05-09 16:04:51 得分 1

还有我啊!!  
  wangle11111@126.com  
  谢谢!!Top

20 楼hudan(路弯弯其不好走兮,吾将上下而求索)回复于 2004-05-11 00:48:07 得分 0

 
  怎么这里就没人帮忙呢  
   
   
  Top

21 楼beejoy(我一直在思考)回复于 2004-05-11 20:30:24 得分 1

这个问题已经有一个相同的贴子了,你可以看看:http://expert.csdn.net/Expert/topic/3048/3048966.xml?temp=.5338709  
   
  Top

22 楼hudan(路弯弯其不好走兮,吾将上下而求索)回复于 2004-05-14 12:19:32 得分 0

感谢   beejoy(我一直在思考)  
  不过里面提供的例子都是连接到一个页面来获取时间的,但现在这个网页连接不上了,  
   
  继续求解!Top

23 楼hudan(路弯弯其不好走兮,吾将上下而求索)回复于 2004-06-22 10:59:52 得分 0

近来的朋友,帮我顶一下,Top

24 楼stoone(阳光总在风雨后)回复于 2004-06-28 10:04:56 得分 1

不会,帮你顶Top

25 楼hudan(路弯弯其不好走兮,吾将上下而求索)回复于 2004-07-01 20:33:40 得分 0

两个月了,还是没解决Top

26 楼hudan(路弯弯其不好走兮,吾将上下而求索)回复于 2004-07-18 03:30:39 得分 0

help   !Top

27 楼jzyhummel(篱影)回复于 2004-07-18 10:20:16 得分 88

嘿嘿,两个月还没有解决啊,我一天在网络版,居然没有看到     :)  
  void   CGetNetTimeDlg::OnButton1()    
  {  
  WSADATA   wsa;  
  SOCKET   sock;  
  struct   sockaddr_in   cliaddr;  
  char   buf[100];  
   
  if(WSAStartup(MAKEWORD(2,0),   &wsa)!=0)  
  sock   =   socket(AF_INET,   SOCK_STREAM,   0);  
  cliaddr.sin_family=AF_INET;  
  cliaddr.sin_addr.s_addr   =   inet_addr("192.43.244.18");  
  cliaddr.sin_port   =   htons(13);  
   
  ZeroMemory(buf,100);  
  connect(sock,(struct   sockaddr   *)&cliaddr,sizeof(cliaddr));  
  recv(sock,buf,100,0);  
  SetDlgItemText(IDC_STR,buf);  
  }  
  另外友情提供几个组织的地址:  
  time.nist.gov             NIST  
  tick.usno.navy.mil       美国海军天文台  
  clock.sgi.com         SGI  
  tick.mit.edu       麻省理工学院(MIT)  
   
  不过一般都推荐美国海军天文台的,上面得到的时间是格林威治时间,北京时间要加8Top

28 楼jzyhummel(篱影)回复于 2004-07-18 10:21:28 得分 0

if(WSAStartup(MAKEWORD(2,0),   &wsa)!=0)  
  =============================================================================  
  这句我忘记了,这是我去掉错误处理语句后遗留下的Top

29 楼jzyhummel(篱影)回复于 2004-07-18 10:26:11 得分 0

最近要升五角,赶快给分     :)Top

30 楼hudan(路弯弯其不好走兮,吾将上下而求索)回复于 2004-07-18 12:22:30 得分 0

谢谢   jzyhummel(刀锋[篱影])    
   
  我先测试一下,测试成功,立刻揭贴!Top

31 楼hudan(路弯弯其不好走兮,吾将上下而求索)回复于 2004-07-18 13:27:18 得分 0

单位通过代理上网  
  只开放了80端口,端口13没反映Top

32 楼jzyhummel(篱影)回复于 2004-07-18 19:20:30 得分 0

那就没有可能了,13号端口是必须的Top

33 楼hudan(路弯弯其不好走兮,吾将上下而求索)回复于 2004-07-21 00:56:23 得分 0

感谢jzyhummel(刀锋[篱影])  
   
  揭贴Top

相关问题

  • 如何获取时间?
  • 如何获取时间?
  • 在网络中如何获取sql服务器上的系统时间?
  • 如何获取系统时间改变?
  • 如何获取服务器时间!
  • 如何获取文件时间?
  • 如何windows获取关机时间?
  • 如何获取系统时间?
  • 如何获取系统时间
  • 如何获取服务器时间?

关键词

  • 代码
  • 网络
  • client
  • server
  • cliaddr
  • 获取
  • 时间
  • sander
  • ntp
  • wsa

得分解答快速导航

  • 帖主:hudan
  • w3guy
  • yhqs540
  • sharkhuang
  • Sander
  • wangle11111
  • jszj
  • wangle11111
  • zxs790501
  • frysc
  • wangle11111
  • beejoy
  • stoone
  • jzyhummel

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo