在线

解决方案 »

  1.   

    给你个例子,Port Scanner,带源码:
    http://www.planet-source-code.com/vb/scripts/ShowCode.asp?txtCodeId=571&lngWId=7
      

  2.   

    用一个TClientSocketClientSocket.Address:=你要扫描的主机的IP;
    for i:=1 to 65535 do
    begin
    ClientSocket.Active:=False;
    ClientSocket.Port:=i;
    ClientSocket.Socket.Data:=Pointer(i); //待会根据这个判断哪个端口连上了
    ClientSocket.Active:=TRUE;
    end;
    procedure TForm1.ClientSocketConnect(Sender: TObject; Socket: TCustomWinSocket);
    begin
    ShowMessage(IntToStr(Integer(Socket.Data))+'号端口连接成功');
    end;
      

  3.   

    用indy很容易实现,指定hosts 和port,然后connect就可以了!而且默认是多线程的!