首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 如何得到ping值 [已结贴,结贴人:diamondgate]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • diamondgate
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 揭贴率:
    发表于:2008-03-06 11:59:55 楼主
    如提
    如何用vb.net得到ping值
    20  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • herol
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-03-06 12:37:091楼 得分:0
    允许应用程序确定是否可通过网络访问远程计算机。

    Ping 类型公开了以下成员。

    构造函数
      名称 说明
      Ping  初始化 Ping 类的新实例。
    页首
    方法
      名称 说明
      CreateObjRef  创建一个对象,该对象包含生成用于与远程对象进行通信的代理所需的全部相关信息。 (继承自 MarshalByRefObject。)
      Dispose  已重载。 
      Equals  确定指定的 Object 是否等于当前的 Object。 (继承自 Object。)
      Finalize  在通过垃圾回收将 Component 回收之前,释放非托管资源并执行其他清理操作。 (继承自 Component。)
      GetHashCode  用作特定类型的哈希函数。 (继承自 Object。)
      GetLifetimeService  检索控制此实例的生存期策略的当前生存期服务对象。 (继承自 MarshalByRefObject。)
      GetService  返回一个对象,该对象表示由 Component 或它的 Container 提供的服务。 (继承自 Component。)
      GetType  获取当前实例的 Type。 (继承自 Object。)
      InitializeLifetimeService  获取控制此实例的生存期策略的生存期服务对象。 (继承自 MarshalByRefObject。)
      MemberwiseClone  已重载。 
      OnPingCompleted  引发 PingCompleted 事件。
      Send  已重载。 尝试将 Internet 控制消息协议 (ICMP) 回送消息发送到远程计算机并接收来自远程计算机的相应 ICMP 回送答复消息。
      SendAsync  已重载。 尝试以异步方式将 Internet 控制消息协议 (ICMP) 回送消息发送到指定的计算机,并接收来自该计算机的相应 ICMP 回送答复消息。
      SendAsyncCancel  取消所有挂起的发送 Internet 控制消息协议 (ICMP) 回送消息并接收相应 ICMP 回送答复消息的异步请求。
      ToString  返回包含 Component 的名称的 String(如果有)。不应重写此方法。 (继承自 Component。)
    页首
    属性
      名称 说明
      CanRaiseEvents  获取一个指示组件是否可以引发事件的值。 (继承自 Component。)
      Container  获取 IContainer,它包含 Component。 (继承自 Component。)
      DesignMode  获取一个值,用以指示 Component 当前是否处于设计模式。 (继承自 Component。)
      Events  获取附加到此 Component 的事件处理程序的列表。 (继承自 Component。)
      Site  获取或设置 Component 的 ISite。 (继承自 Component。)
    页首
    事件
      名称 说明
      Disposed  当通过调用 Dispose 方法释放组件时发生。 (继承自 Component。)
      PingCompleted  当发送 Internet 控制消息协议 (ICMP) 回送消息并接收相应 ICMP 回送答复消息的异步操作完成或被取消时发生。
    页首
    显式接口实现
      名称 说明
      IDisposable..::.Dispose  释放由 Ping 类的实例使用的所有资源。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • diamondgate
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-03-07 08:24:062楼 得分:0
    从网上贴来这些东西有用吗?
    你回答的这个问题对得上吗?
    估计你自己也不明白贴的是什么东西吧?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • Annuowork
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-03-08 12:10:253楼 得分:0
    有用VB写的,你要不```
    俺这会没有装.NET的机子,

    要不给你自己改的试试.
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • Annuowork
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-03-08 12:11:044楼 得分:4
    VERSION 5.00
    Begin VB.Form Form1
      Caption        =  "ping对方计算机"
      ClientHeight    =  3930
      ClientLeft      =  60
      ClientTop      =  345
      ClientWidth    =  5700
      LinkTopic      =  "Form1"
      ScaleHeight    =  3930
      ScaleWidth      =  5700
      StartUpPosition =  1  '所有者中心
      Begin VB.CommandButton Command2
          Caption        =  "退出"
          Height          =  435
          Left            =  150
          TabIndex        =  15
          Top            =  3345
          Width          =  5325
      End
      Begin VB.CommandButton Command1
          Caption        =  "Ping"
          Height          =  615
          Left            =  3630
          TabIndex        =  9
          Top            =  225
          Width          =  1740
      End
      Begin VB.TextBox Text1
          Height          =  375
          Left            =  990
          TabIndex        =  1
          Text            =  "192.168.1.1"
          Top            =  135
          Width          =  2295
      End
      Begin VB.TextBox Text2
          Height          =  375
          Left            =  990
          TabIndex        =  0
          Text            =  "255.255.255.0"
          Top            =  525
          Width          =  2295
      End
      Begin VB.Label Label4
          Height          =  345
          Index          =  4
          Left            =  1920
          TabIndex        =  14
          Top            =  2925
          Width          =  3495
      End
      Begin VB.Label Label4
          Height          =  345
          Index          =  3
          Left            =  1920
          TabIndex        =  13
          Top            =  2475
          Width          =  3495
      End
      Begin VB.Label Label4
          Height          =  345
          Index          =  2
          Left            =  1920
          TabIndex        =  12
          Top            =  1995
          Width          =  3495
      End
      Begin VB.Label Label4
          Height          =  345
          Index          =  1
          Left            =  1920
          TabIndex        =  11
          Top            =  1545
          Width          =  3495
      End
      Begin VB.Label Label4
          Height          =  345
          Index          =  0
          Left            =  1950
          TabIndex        =  10
          Top            =  1065
          Width          =  3495
      End
      Begin VB.Label Label1
          Caption        =  "IP地址:"
          Height          =  375
          Left            =  255
          TabIndex        =  8
          Top            =  195
          Width          =  780
      End
      Begin VB.Label Label2
          Caption        =  "子网掩码:"
          Height          =  375
          Left            =  150
          TabIndex        =  7
          Top            =  600
          Width          =  990
      End
      Begin VB.Label Label3
          Caption        =  "测试状态:"
          Height          =  360
          Index          =  0
          Left            =  150
          TabIndex        =  6
          Top            =  1065
          Width          =  1695
      End
      Begin VB.Label Label3
          Caption        =  "地址:"
          Height          =  360
          Index          =  1
          Left            =  150
          TabIndex        =  5
          Top            =  1545
          Width          =  1695
      End
      Begin VB.Label Label3
          Caption        =  "延迟时间:"
          Height          =  360
          Index          =  2
          Left            =  150
          TabIndex        =  4
          Top            =  1995
          Width          =  1695
      End
      Begin VB.Label Label3
          Caption        =  "数据包大小"
          Height          =  360
          Index          =  3
          Left            =  150
          TabIndex        =  3
          Top            =  2475
          Width          =  1695
      End
      Begin VB.Label Label3
          Caption        =  "数据点:"
          Height          =  360
          Index          =  4
          Left            =  150
          TabIndex        =  2
          Top            =  2925
          Width          =  1695
      End
    End
    Attribute VB_Name = "Form1"
    Attribute VB_GlobalNameSpace = False
    Attribute VB_Creatable = False
    Attribute VB_PredeclaredId = True
    Attribute VB_Exposed = False
    Option Explicit
    Private Const WS_VERSION_REQD As Long = &H101
    Private Const INADDR_NONE As Long = &HFFFFFFFF
    Private Const MAX_WSADescription As Long = 256
    Private Const MAX_WSASYSStatus As Long = 128
    Private Const PING_TIMEOUT As Long = 500

    Private Type ICMP_OPTIONS
      Ttl            As Byte
      Tos            As Byte
      Flags          As Byte
      OptionsSize    As Byte
      OptionsData    As Long
    End Type

    Private Type ICMP_ECHO_REPLY
      Address        As Long
      status          As Long
      RoundTripTime  As Long
      DataSize        As Long
      DataPointer    As Long
      Data            As String * 250
    End Type
    Private Type WSADATA
      wVersion As Integer
      wHighVersion As Integer
      szDescription(0 To MAX_WSADescription) As Byte
      szSystemStatus(0 To MAX_WSASYSStatus) As Byte
      wMaxSockets As Long
      wMaxUDPDG As Long
      dwVendorInfo As Long
    End Type

    Private Declare Function IcmpCreateFile Lib "icmp.dll" () As Long

    Private Declare Function IcmpCloseHandle Lib "icmp.dll" (ByVal IcmpHandle As Long) As Long
     
    Private Declare Function IcmpSendEcho Lib "icmp.dll" (ByVal IcmpHandle As Long, _
        ByVal DestinationAddress As Long, ByVal RequestData As String, ByVal RequestSize As Long, _
        ByVal RequestOptions As Long, ReplyBuffer As ICMP_ECHO_REPLY, ByVal ReplySize As Long, _
        ByVal Timeout As Long) As Long
       
    Private Declare Function WSAStartup Lib "WSOCK32.DLL" (ByVal wVersionRequired As Long, _
        lpWSADATA As WSADATA) As Long
       
    Private Declare Function WSACleanup Lib "WSOCK32.DLL" () As Long

    Private Declare Function gethostname Lib "WSOCK32.DLL" (ByVal szHost As String, _
        ByVal dwHostLen As Long) As Long
       
    Private Declare Function gethostbyname Lib "WSOCK32.DLL" (ByVal szHost As String) As Long

    Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" _
        (xDest As Any, xSource As Any, ByVal nbytes As Long)
     
    Private Declare Function inet_addr Lib "WSOCK32.DLL" (ByVal s As String) As Long
       
    Private Sub Command1_Click()  'ping网络计算机
      Dim ECHO As ICMP_ECHO_REPLY
      Dim pos As Long
      Dim success As Long
      Dim WSAD As WSADATA
      Dim aa As Boolean
      Dim mystr As String
     
      aa = WSAStartup(WS_VERSION_REQD, WSAD) = 0
      If aa Then
        Dim hPort As Long
        mystr = inet_addr(Text1.Text)
        If mystr <> INADDR_NONE Then
            hPort = IcmpCreateFile()
            If hPort Then
              Call IcmpSendEcho(hPort, mystr, Text2.Text, Len(Text2.Text), _
                                0, ECHO, Len(ECHO), PING_TIMEOUT)    '发送回响请求报文,返回回响应答报文
              Call IcmpCloseHandle(hPort)
            End If
            If ECHO.status = 0 Then Label4(0).Caption = "ping成功" Else Label4(0).Caption = "ping失败"
            Label4(1).Caption = ECHO.Address    '显示网络计算机地址
            Label4(2).Caption = ECHO.RoundTripTime & " ms"  '显示网络链接延迟时间
            Label4(3).Caption = ECHO.DataSize & " bytes  '显示数据包大小"
            Label4(4).Caption = ECHO.DataPointer
        End If
      End If
    End Sub

    Private Sub Command2_Click()
      End
    End Sub

    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zcsor
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-03-09 22:32:185楼 得分:0
    恩,实现得不错麻!
    偶学管道的时候写过一个VB的DOS命令运行程序来扩展DOS命令,其中管道运行DOS命令的代码用.NET重新写了,可以实现这个东东,也是一个途径.......
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • lzmtw
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-03-10 12:51:076楼 得分:16
    类有的:

    VB.NET code
    Dim Reply As System.Net.NetworkInformation.PingReply Dim Ping As New System.Net.NetworkInformation.Ping Reply = Ping.Send("192.168.0.1") Console.WriteLine("{0},{1},{2}", Reply.Address, Reply.RoundtripTime, Reply.Status.ToString)
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • diamondgate
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-03-10 13:59:257楼 得分:0
    谢谢lzmtw 这结果正是我想要的
    同时也感谢Annuowork!!!
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved