怎样在BCB里用最简单的办法测试局域网某IP地址是否存在?
如: 192.168.0.3 是否存在?不要告诉我用ping命令.

解决方案 »

  1.   

    呵呵,要简单当然要ping了?echo一下只要两条语句!!不知道你的简单是什么意思?
      

  2.   

    用什么BCB的程序怎样编制:测试IP地址是否存在
    的子程序
      

  3.   

    bool  IpExist(String ip)
    {
         // 怎样编写此子程序
    }
      

  4.   

    bool  TForm1::TestIpExist(String ip,int port) // 测试端口是否存在
    {
           ClientSocket1->Close();
           ClientSocket1->ClientType=ctBlocking;    // 同步方式
           ClientSocket1->Address=ip;       // IP地址 x.x.x.x
           ClientSocket1->Port=port;        // 端口 port
           try
             {
               ClientSocket1->Open();
             }
           catch(...)
             {
             }
           if (ClientSocket1->Active)
             {
                ClientSocket1->Close();
                return(true);
             }
           else
                return(false);
    }
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
           if (TestIpExist(Edit1->Text,Edit2->Text.ToInt()))
                ShowMessage("Exist");
           else
                ShowMessage("Not Exists");
    }
    用一个ClentSocket1就可测试是否存在,如果不存在,同步方式测试会占用一定时间,
    如果端口存在会很快返回,如果用异步方式,自已可以设法设置超时处理。