VB 判断IP能否ping通_第1页
VB 判断IP能否ping通_第2页
VB 判断IP能否ping通_第3页
VB 判断IP能否ping通_第4页
VB 判断IP能否ping通_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、VB 判断IP能否ping通 (2012-12-20 00:19:31)转载标签: ping ip vb分类: 计算机杂症窗体代码'测试Private Sub Form_Load()If PingIP("122.22.255.255") ThenMsgBox "可以ping通"ElseMsgBox "ping 不通"End IfEnd Sub 模块代码:Option Explicit Private Const IP_SUCCESS As Long

2、 = 0Private Const IP_STATUS_BASE As Long = 11000Private Const IP_BUF_TOO_SMALL As Long = (11000 + 1)Private Const IP_DEST_NET_UNREACHABLE As Long = (11000 + 2)Private Const IP_DEST_HOST_UNREACHABLE As Long = (11000 + 3)Private Const IP_DEST_PROT_UNREACHABLE As Long = (11000 + 4)Private Const IP_DEST

3、_PORT_UNREACHABLE As Long = (11000 + 5)Private Const IP_NO_RESOURCES As Long = (11000 + 6)Private Const IP_BAD_OPTION As Long = (11000 + 7)Private Const IP_HW_ERROR As Long = (11000 + 8)Private Const IP_PACKET_TOO_BIG As Long = (11000 + 9)Private Const IP_REQ_TIMED_OUT As Long = (11000 + 10)Private

4、Const IP_BAD_REQ As Long = (11000 + 11)Private Const IP_BAD_ROUTE As Long = (11000 + 12)Private Const IP_TTL_EXPIRED_TRANSIT As Long = (11000 + 13)Private Const IP_TTL_EXPIRED_REASSEM As Long = (11000 + 14)Private Const IP_PARAM_PROBLEM As Long = (11000 + 15)Private Const IP_SOURCE_QUENCH As Long =

5、(11000 + 16)Private Const IP_OPTION_TOO_BIG As Long = (11000 + 17)Private Const IP_BAD_DESTINATION As Long = (11000 + 18)Private Const IP_ADDR_DELETED As Long = (11000 + 19)Private Const IP_SPEC_MTU_CHANGE As Long = (11000 + 20)Private Const IP_MTU_CHANGE As Long = (11000 + 21)Private Const IP_UNLOA

6、D As Long = (11000 + 22)Private Const IP_ADDR_ADDED As Long = (11000 + 23)Private Const IP_GENERAL_FAILURE As Long = (11000 + 50)Private Const MAX_IP_STATUS As Long = (11000 + 50)Private Const IP_PENDING As Long = (11000 + 255)Private Const PING_TIMEOUT As Long = 500Private Const WS_VERSION_REQD As

7、Long = &H101Private Const MIN_SOCKETS_REQD As Long = 1Private Const SOCKET_ERROR As Long = -1Private Const INADDR_NONE As Long = &HFFFFFFFFPrivate Const MAX_WSADescription As Long = 256Private Const MAX_WSASYSStatus As Long = 128 Public PingTime As LongPrivate Type ICMP_OPTIONSTtl As By

8、teTos As ByteFlags As ByteOptionsSize As ByteOptionsData As LongEnd Type Private Type ICMP_ECHO_REPLYAddress As Longstatus As LongRoundTripTime As LongDataSize As LongDataPointer As LongOptions As ICMP_OPTIONSData As String * 250End Type Private Type WSADATAwVersion As IntegerwHighVersion

9、As IntegerszDescription(0 To MAX_WSADescription) As ByteszSystemStatus(0 To MAX_WSASYSStatus) As BytewMaxSockets As LongwMaxUDPDG As LongdwVendorInfo As LongEnd Type Public Declare Function timeGetTime Lib "winmm.dll" () As LongPrivate Declare Function WSAStartup Lib "wsock32&quo

10、t; (ByVal wVersionRequired As Long, lpWSADATA As WSADATA) As LongPrivate Declare Function WSACleanup Lib "wsock32" () As LongPrivate Declare Function IcmpCreateFile Lib "icmp.dll" () As LongPrivate Declare Function inet_addr Lib "wsock32" (ByVal s As String) As LongPriv

11、ate Declare Function IcmpCloseHandle Lib "icmp.dll" (ByVal IcmpHandle As Long) As LongPrivate 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

12、Long, ReplyBuffer As ICMP_ECHO_REPLY, ByVal ReplySize As Long, ByVal Timeout As Long) As Long Private Function GetStatusCode(status As Long) As StringOn Error GoTo ErrLineDim Msg As StringGetStatusCode = ""Select Case statusCase IP_SUCCESSMsg = "ip success"Case INADDR_NONEMs

13、g = "inet_addr: bad IP format"Case IP_BUF_TOO_SMALLMsg = "ip buf too_small"Case IP_DEST_NET_UNREACHABLEMsg = "ip dest net unreachable"Case IP_DEST_HOST_UNREACHABLEMsg = "ip dest host unreachable"Case IP_DEST_PROT_UNREACHABLEMsg = "ip dest port unreachable

14、"Case IP_DEST_PORT_UNREACHABLEMsg = "ip dest port unreachable"Case IP_NO_RESOURCESMsg = "ip no resources"Case IP_BAD_OPTIONMsg = "ip bad option"Case IP_HW_ERRORMsg = "ip hw_error"Case IP_PACKET_TOO_BIGMsg = "ip packet too_big"Case IP_REQ_TIMED_O

15、UTMsg = "ip req timed out"Case IP_BAD_REQMsg = "ip bad req"Case IP_BAD_ROUTEMsg = "ip bad route"Case IP_TTL_EXPIRED_TRANSITMsg = "ip ttl expired transit"Case IP_TTL_EXPIRED_REASSEMMsg = "ip ttl expired reassem"Case IP_PARAM_PROBLEMMsg = "ip para

16、m_problem"Case IP_SOURCE_QUENCHMsg = "ip source quench"Case IP_OPTION_TOO_BIGMsg = "ip option too_big"Case IP_BAD_DESTINATIONMsg = "ip bad destination"Case IP_ADDR_DELETEDMsg = "ip addr deleted"Case IP_SPEC_MTU_CHANGEMsg = "ip spec mtu change"Ca

17、se IP_MTU_CHANGEMsg = "ip mtu_change"Case IP_UNLOADMsg = "ip unload"Case IP_ADDR_ADDEDMsg = "ip addr added"Case IP_GENERAL_FAILUREMsg = "ip general failure"Case IP_PENDINGMsg = "ip pending"Case PING_TIMEOUTMsg = "ping timeout"Case ElseMsg =

18、 "unknown msg returned"End SelectGetStatusCode = MsgExit FunctionErrLine:End Function Private Function Ping(sAddress As String, sDataToSend As String, ECHO As ICMP_ECHO_REPLY) As LongOn Error GoTo ErrLineDim hPort As LongDim dwAddress As LongdwAddress = inet_addr(sAddress)If dwAddress <> INA

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论