#include <Icmpapi.h>
#pragma comment(lib,"iphlpapi.lib")
void TestFunc()
{
HANDLE icmpHwnd;
icmpHwnd=IcmpCreateFile();
IPAddr pAddr;
pAddr=(IPAddr)inet_addr("192.168.8.169");
icmp_echo_reply pData;
for(int i=1;i<=1;i++)
{
IcmpSendEcho(icmpHwnd,pAddr,NULL,0,NULL,(LPVOID)&pData,sizeof(icmp_echo_reply),0);
if (pData.Status==0)
{
//printf("Ping测试返回的结果: Time=%dms TTL=%d \n",(int)pData.RoundTripTime(int)pData.Options.Ttl);
}
}
}
常量名
|
值
|
含义
|
---|---|---|
IP_SUCCESS
|
0
|
状态是成功。
|
IP_BUF_TOO_SMALL
|
11001
|
答复缓冲区太小。
|
IP_DEST_NET_UNREACHABLE
|
11002
|
目标网络不可达。
|
IP_DEST_HOST_UNREACHABLE
|
11003
|
目标主机不可达。
|
IP_DEST_PROT_UNREACHABLE
|
11004
|
目的地的协议是遥不可及。
|
IP_DEST_PORT_UNREACHABLE
|
11005
|
目标端口不可达。
|
IP_NO_RESOURCES
|
11006
|
IP资源不足是可用的。
|
IP_BAD_OPTION
|
11007
|
指定了错误的IP选项。
|
IP_HW_ERROR
|
11008
|
一个硬件错误。
|
IP_PACKET_TOO_BIG
|
11009
|
包太大。
|
IP_REQ_TIMED_OUT
|
11010
|
请求超时。
|
IP_BAD_REQ
|
11011
|
一个坏的请求。
|
IP_BAD_ROUTE
|
11012
|
一个糟糕的路线。
|
IP_TTL_EXPIRED_TRANSIT
|
11013
|
在传输过程中的生存时间(TTL)的过期。
|
IP_TTL_EXPIRED_REASSEM
|
11014
|
在碎片重组过程中的生存时间过期。
|
IP_PARAM_PROBLEM
|
11015
|
一个参数的问题。
|
IP_SOURCE_QUENCH
|
11016
|
数据报到达太快,处理和数据报可能被丢弃。
|
IP_OPTION_TOO_BIG
|
11017
|
一个IP选项是太大了。
|
IP_BAD_DESTINATION
|
11018
|
一个坏的目的地。
|
IP_GENERAL_FAILURE
|
11050
|
一般故障。这个错误可以返回一些畸形的ICMP数据包
|