我们在玩连网游戏都会有一个ping值来告诉我们网络连通情况,用delphi如何得到这个值呢?

解决方案 »

  1.   

    可以用重定向
    ping xxx.xxx.xxx.xxx >> a.txt
    (用shellexec)
    然后在文本文件a.txt中找啊:)
      

  2.   

    用socket函数,
    wasstartup
    wasclose
    gethostbyname
      

  3.   

    用DELPHI中INDY的IGMP控件就可以实现啊。
    IGMP.PING
    在REPLAY事件中获取响应时间。DELPHI6中有DEMO的。
      

  4.   

    看看我的做法gettickcount发送自定的ping(只是一个标志而已)包给对方
    tevent.waitfor对方收到后立刻发一个包回应这边收到回应后立刻setevent那边waitfor 就过了再(gettickcount - 刚刚的gettickcount) div 2就是ping值了