Einzelnen Beitrag anzeigen

ATwardz

Registriert seit: 12. Mai 2003
205 Beiträge
 
Delphi 7 Professional
 
#22

Es funktioniert!!!!!!!

  Alt 17. Mai 2003, 20:32
Ich habs, es zwar eine etwas umständlich lösung aber sie funkst!
ca 65000 ips in 23 sekunden!

Ich habe einfach das komlpette scann programm als eigenes Programm gescvhrieben, was sich bis 255 immer selber auf ruft es sei den die verbindung steht! Nicht gerade die ideals aber was solls, es funksts!


Ich brauche dann zwar immer noch rund 7 tage bis ich alle IP's (4,3 Milliarden ) gescannt habe , aber aber da wie gesagt mein Server die beiden ersten stellen immer gleich vergibt, ist es eine akzeptale Lösung!

Delphi-Quellcode:

procedure TForm1.FormCreate(Sender: TObject);
Begin
  test:=true;
  ipscan;
end;

Procedure Tform1.ipscan;
var
a:Integer;
ZAHL: string;
begin
  memo2.Clear;
  memo2.Lines.LoadFromFile('IP.ip');
  ZAHL:=memo2.Lines.Strings[0];
  If strtoint(Zahl)<256 then
  Begin
    For a:=1 to 255 do
    begin
      Try
        Client1.host:='192.168.'+Zahl+'.'+inttostr(a);
        Client1.Open;
        Application.ProcessMessages;
        If client1.socket.connected=true then
        Begin
          memo2.Clear;
          memo2.Lines.Add(client1.Host);
          memo2.Lines.SaveToFile('Host.ip');
          Form1.Visible:=true;
          client1.Close;
          test:=true;
          exit;
        end;
      except
        beep;
      end;
      client1.Close;
    end;
  memo2.Clear;
  memo2.Lines.Add(inttostr(strtoint(Zahl)+1));
  memo2.Lines.SaveToFile('IP.ip');
  test:=false;
  end
  else
  Begin
  memo2.Clear;
  memo2.Lines.Add('0');
  memo2.Lines.SaveToFile('IP.ip');
  test:=false;
  end;
  end;


procedure TForm1.Client1Error(Sender: TObject; Socket: TCustomWinSocket;
  ErrorEvent: TErrorEvent; var ErrorCode: Integer);
begin
  Errorcode:=0;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
If Test=false then
Begin
  winexec(pchar('Scanner.exe'), SW_hide);
  Form1.Close;
end;
end;
Die Datei IP muss dann nur noch im eigentlichen Programm eingegeben werden!

Ich werde auch noch den Code für xxx.xxx.xxx.xxx hier zeigen aber der muss erst geschrieben werden!

Vielen Dank nochman, weil ohne deine Hilfe wäre ich da wahrscheinlich nie drauf gekommen!

Also danke!

@wardz
  Mit Zitat antworten Zitat