我用raw socket做了一个请求时间戳的程序,但是返回显示发送时间和接收时间为什么差了很多,以下是我的测试数据
timestamp 192.168.1.11
40 bytes from 192.168.1.11: icmp_seq = 0.  orig: 1583890 ms, recv: 2599718 ms, xmit: 2599718 ms其中
  orig;  发起时间戳
  recv:  接收时间戳
  xmit;  发送时间戳
这是在本机试的,为什么orig: 1583890 ms和 xmit: 2599718 ms差了这么多。
另外发起时间是用GetTickCount得到的,其它两个时间是由主机自动填上的.
GetTickCount得到是什么时间啊。我在试验的时候,机器也就开机了二十分钟左右

解决方案 »

  1.   

    GetTickCount得到的是程序运行时间,以毫秒记
    GetLocalTime( LPSYSTEMTIME lpSystemTime )得到当地时间(机器时间),毫秒记
    GetSystemTime( LPSYSTEMTIME ) 得到的是格林威治时间 毫秒记GetTime( )得到的是机器时间。无毫秒
      

  2.   

    有没有函数将GetSystemTime( LPSYSTEMTIME )所得到的时间转换为一个word型毫秒
      

  3.   

    将GetSystemTime转换成毫秒很容易阿,我也写过同样的程序,而且发起时间戳用的是GetSystemTime,但仅仅在本地测试时获取的时间时正确的,请问楼主有没有遇到过同样的问题
      

  4.   

    GetSystemTime ,里面的返回参数中可以提取出格林威治时间。