用程序检测某一端网络是否能ping 通怎么实现?

cyg1dm 2003-07-07 06:44:52
我做个软件检测我和公司只的网络情况。
...全文
110 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
极速小王子 2004-01-01
  • 打赏
  • 举报
回复
记号,学习!
del77 2003-12-31
  • 打赏
  • 举报
回复
UP
pp616 2003-07-08
  • 打赏
  • 举报
回复
呵呵。网上有现成的ping 类。你找一下就好了。
jbz 2003-07-08
  • 打赏
  • 举报
回复
matq2008(叶子.net)上面给出的代码好用,

但是能否给出ping的速度呢?
cyg1dm 2003-07-08
  • 打赏
  • 举报
回复
如果通了则返回‘真’值,否则返回‘假’。
cyg1dm 2003-07-08
  • 打赏
  • 举报
回复
up
叶子哟 2003-07-07
  • 打赏
  • 举报
回复
假如某机子 名称 =aaa IP=192.168.0.5
可以 Ping("192.168.0.5",NULL) 若OK则返回aaa否则则返回""
或者 Ping(NULL,"aaa") 若OK则返回192.168.0.5否则则返回""
注意#include <winsock.h>

String __stdcall Ping(String IPAddress,String HostName)
{
//#include <winsock.h>
String ReturnValue="";
if(IPAddress==NULL && HostName==NULL) return ReturnValue;

WORD wVersionRequested;
WSADATA wsaData;
int err;
wVersionRequested = MAKEWORD( 2, 0 );
err=WSAStartup(wVersionRequested,&wsaData );
if(err!=0) {WSACleanup();return ReturnValue;}
if(LOBYTE( wsaData.wVersion )!= 2 || HIBYTE(wsaData.wVersion)!=0)
{WSACleanup();return ReturnValue;}
struct hostent *hostname;
unsigned int addr;
struct in_addr in;
char *IP,*ptr;
if(IPAddress!=NULL)
{
addr=inet_addr((char FAR*)(IPAddress.c_str()));
hostname=gethostbyaddr((char *)&addr,4,AF_INET);
if(hostname) ReturnValue=AnsiString(hostname->h_name);
else ReturnValue="";
}
else if(HostName==NULL) ReturnValue="";
else
{
hostname=gethostbyname((char FAR*)(HostName.c_str()));
if(hostname)
{ memset((void *)&in,sizeof(in),0);
in.s_addr=*((unsigned long *)hostname->h_addr_list[0]);
ptr=inet_ntoa(in);
if(ptr)
{IP=new char[strlen(ptr)+1];
strcpy(IP,ptr);
ReturnValue=AnsiString(IP);
}
else {ReturnValue="";}
}
else {ReturnValue="";}

}
WSACleanup();
return ReturnValue;
}
albeta 2003-07-07
  • 打赏
  • 举报
回复
直接用Socks编程啊。#include <winsock.h>,然后发ICMP包,就可以了。
Siney 2003-07-07
  • 打赏
  • 举报
回复
bcb6附带一个ping的例子
在[bcb6]/example/indy/pinggui/下

----------------------------------
感谢您选用Borland产品,更多信息请前往Borland社区和新闻组查询:.......

13,870

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧