![]() |
code richtig???
Liste der Anhänge anzeigen (Anzahl: 1)
Delphi-Quellcode:
ich hab mir den sorce gebastelt um die ports zu prüfen, ob sie offen sind, aber ich bekomme immer die meldung, dass alle ports geschlossen sind, obwohl ich keine portblocker hab
for i:=spinedit1.Value to spinedit2.Value do
begin try if (GetAsyncKeystate(VK_ESCAPE)) <> 0 then begin gauge2.Progress:=0; label3.Visible:=false; exit; end; gauge2.Progress:=i; TcpClient1.RemotePort:=inttostr(i); if TcpClient1.Connected then begin TcpClient1.Disconnect; end else begin TcpClient1.Disconnect; listbox1.Items.Add('Port ' + inttostr(i) + ' ist geschlossen'); end; application.ProcessMessages; except application.ProcessMessages; TcpClient1.Disconnect; listbox1.Items.Add('Port ' + inttostr(i) + ' ist geschlossen'); end; end; hab komplettes projekt mal mit angefügt --> ist natürlich nur testversion (noch nicht ausgereift) |
Re: code richtig???
Also, damit hab ich mich noch nie befasst und kann dir leider nicht viel helfen.
Aber zumindest in dem Codeschnipsel da gibts ja auch gar keine Ausgabe, wenn ein Port offen ist, oder? :gruebel: |
Re: code richtig???
ja hast schon recht
es werden nur alle geschlossenen ports in die liste eingefügt, aber jeder normale mesch weiss dann ja auch, dass die anderen offen sind (zumal es mehr ports wie zeilen in der liste gibt--> würden einfach nicht alle reinpassen) |
Re: code richtig???
Biste schonmal mit dem Debugger durchgelaufen? Vielleicht läuft das Programm ja auch jedesmal in den Except-Teil. Schreib da doch mal nen anderen Text rein. 'Fehler bei Port' + IntToStr( i ) oder so...
|
Re: code richtig???
Ich kenne mich da auch nicht aus, aber unser Luckie hat mal einen Portscanner programmiert:
![]() |
Re: code richtig???
gute idee, aber dann würde der doch aus der schleife rauskommen und nicht jeden port einzeln ala geschlossen melden sonden dort aufhören, wo er sich ausgehagt hat (im delphi debugger würde das prog auch anhalten, except wird nur bei verwendet, wenn ich die exe extern starte --> zumindest bei mir so)
|
Re: code richtig???
Ne, die For-Schleife beginnt ja vor dem Try-Except-Block
Wie dein Debugger eingestellt ist, weiss ich natürlich nicht, aber ich würds halt mal versuchen. |
Re: code richtig???
hast recht mit er schleife, aber delphi meckert bei mir da trotzdem immer rum
|
Re: code richtig???
Müsste es nicht so aussehen:
Delphi-Quellcode:
...
gauge2.Progress:=i; //Wenn Connected -> Disconnect if TcpClient1.Connected then TcpClient1.Disconnect; //neuen Port setzen TcpClient1.RemotePort:=inttostr(i); //jetzt neue Verbindung aufbauen TcpClient1.Connect; //Falls fehlgeschlagen, dann springt er in den except Block listbox1.Items.Add('Port ' + inttostr(i) + ' ist geschlossen'); ... |
Re: code richtig???
Und zeig lieber in der Listbox die OFFENEN Ports an
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:27 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz