在vb中使用Iphlpapi.dll获取网络信息 第二章 第七节 获取本机网间控制报文协议(ICMP)信息

※==================================================================
※本连载文章说明:
※1、连载首发于《软件报》(http://www.sweek.com)2006年21期(2006年5月22日);
※2、此次网上连载采用的是原稿件结构,内容与《软件报》发表略有不同;
※3、谢绝除《软件报》及其相关刊物之外的传统媒体部分或全部转载;
※4、谢绝任何收费媒体、网络转载;
※5、原作者:uruseibest ,blog:http://blog.csdn.net/uruseibest
※6、如有其它疑问,请联系作者;
※7、如有转载,必须连同本说明一并发表,否则将追究转载者责任。
※======================================================================

第七节 获取本机网间控制报文协议(ICMP:Internet Control Message Protocol)信息

1、函数:

Private Declare Function GetIcmpStatistics Lib "iphlpapi.dll" (pStats As MIB_ICMP) As Long

参数说明:

pStats:[输出] 指向一个本机收到ICMP 统计表的MIB_ICMP类型。

返回值:成功,返回0;失败,返回错误代码。

 

2、使用到的类型:

①MIB_ICMP 为特殊适配器包含网间控制报文协议(ICMP:Internet Control Message Protocol)统计表。

Public Type MIB_ICMP

    stats As MIBICMPINFO    '指定MIBICMPINFO类型包含了电脑ICMP统计信息表

End Type

 

②MIBICMPINFO通过MIBICMPSTATS结构存储的接收或发出的ICMP信息。
Public Type MIBICMPINFO

  icmpInStats As MIBICMPSTATS   '指向MIBICMPSTATS类型,包含接收数据

  icmpOutStats As MIBICMPSTATS '指向MIBICMPSTATS类型,包含发出数据

End Type

 

③MIBICMPSTATS包含ICMP (Internet Control Message Protocol)接收或发出的统计信息。

Public Type MIBICMPSTATS

    dwMsgs As Long          '已收发多少消息

    dwErrors As Long          '已收发多少错误

    dwDestUnreachs As Long    '已收发多少"目标不可抵达"消息

    dwTimeExcds As Long            '已收发多少生存期已过消息

    dwParmProbs As Long            '已收发多少表明数据报内有错误IP信息的消息

    dwSrcQuenchs As Long           '已收发多少源结束消息

    dwRedirects As Long        '已收发多少重定向消息

    dwEchos As Long                '已收发多少ICMP响应请求

    dwEchoReps As Long             '已收发多少ICMP响应应答

    dwTimestamps As Long    '已收发多少时间戳请求

    dwTimestampReps As Long        '已收发多少时间戳响应

    dwAddrMasks As Long      '已收发多少地址掩码

    dwAddrMaskReps As Long '已收发多少地址掩码响应

End Type

 

3、使用到的常量:

 

4、主要代码分析:

①定义一个MIB_ICMP类型的变量,然后直接调用GetIcmpStatistics:

Dim Micmp As MIB_ICMP

r = GetIcmpStatistics(Micmp)

②使用Micmp.stats.icmpInStats成员获取收到的数据信息;使用Micmp.stats.icmpOutStats成员获取发送的数据信息。

 

5、运行时截图:

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/UruseiBest/archive/2006/12/20/1450372.aspx

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值