请问如何可以得到本局域网内所有主机的IP?我是用本机ip和子网掩码相与,得到本网段所有的ip,可这样就有很多没有用的地址,如果在挨个儿ping的话,用recvfrom()又是阻塞式的,有没有办法发出一个ping后,等待一段时间,如果接收超时,就自动ping下一个ip?或者是有更好的方法得到?还有,我是用遍历的方法在一个ftp站点搜索文件的,但是速度太慢了,ftp有没有一张类似文件列表的东西那?北大天网是如何实现搜索的那?谢谢高手指点

解决方案 »

  1.   

    你可以先用NET函数把局域网上机子列举出来,具体函数你可以查查MSDN
    然后用Winsock函数getbyname
      

  2.   

    具体有那些函数可以列出所有主机那?还有一个列举的速度问题,我试过用
    Enum什么来着的函数,很慢,而且不能列举出所有的计算机,然后用gethostbyname()函数,可是有时却不能正确返回,这种情况主要发生在2000系统访问需要密码的时候。