Entwickler-Ecke

Internet / Netzwerk - Fehlermeldungen "umgehen/ignorieren"


Jagg - Di 07.10.03 14:31
Titel: Fehlermeldungen "umgehen/ignorieren"
Hi Leute !
Ich habe da mal eine Frage :
Ich habe ein Memo-Feld mit vielen URL-Adressen (z.b.http://www.google.de)
um zu überprüfen,ob man sich mit der jeweiligen URL-Adresse verbinden kann !
Wenn ich mich jetzt mit einer URL-Adresse verbinde und aus irgendwelchen Gründen,ich das nicht kann,sei es "Host nicht gefunden" oder andere Fehlermeldungen,gibt es dann eine Möglichkeit,das man DIESE Fehlermeldung "umgeht/ignoriert" ???
...damit ich die nächste URL-Adresse in der Liste überprüfe !
Also,das Programm soll so tun,als ob nichs geschehen wäre !

Jagg !


MSCH - Di 07.10.03 15:37

pack das ganze in einen Try..Except block.
z.b.

Delphi-Quelltext
1:
2:
3:
4:
5:
try
  // tue irgentwas was vielleicht nicht funktionieren wird
except
  // hier tue was, wenn ein Fehlerauftaucht
end;

grez
msch


Jagg - Di 07.10.03 15:45

tja,das ganze ist ja schon gut aber das problem ist ich weiss nicht welche fehlermeldung immer kommt
oder ist bei try...except das nicht abhängig ???

soll ich schreiben :
try
//url listen laden
ecxept
//bis eine fehlermeldung kommt
kannst du mir vllt mal so ein BSp geben
ich habe noch nie mit try...except gearbeitet

Jagg !


MSCH - Di 07.10.03 15:53

sofern du im Except block nichts tust, passiert auch nichts, sprich NIX FEHLERMELDUNG !!

nochmal en Beispiel:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
procedure Test;
var 
  I:Integer;
begin
  try
    I:= StrToInt('Test'); // garantiert ein Fehler
  except
    I:=0// keine Fehlermeldung, aber I bei Fehler auf Zero setzen
  end;   
end;


oder


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
procedure Test;
var 
  I:Integer;
begin
  try
    I:= StrToInt('Test'); // garantiert ein Fehler
  except
    MessageDlg('Ups, keine Zahl gefunden!',mtError,[mbOK],0); //Fehlermeldung ausgeben
    I:=0// keine Fehlermeldung, aber I bei Fehler auf Zero setzen
  end;   
end;

grez
msch


Jagg - Mi 15.10.03 16:02

Hi !

Das mit der Fehlermeldung umgehen klappt immer noch nicht !

Code :

Quelltext
1:
2:
  NMHTTP1.Get(ed_website.text); 
  REdit_Q.Lines.Text := NMHTTP1.Body;


ed_website.text := http://www.google.de/help.html;

probiert es mal aus,er sagt immer "Zugriffsverletzung" !
Was mache ich falsch ???

Jagg !
[/code]


blackbirdXXX - Mi 15.10.03 16:53

Du musst in den Umgebungsoptionen "Bei Exceptions anhalten." deaktivieren. Dann gehts


Jagg - Mi 15.10.03 16:58

da ist aber nix mit "exceptions anhalten"


grayfox - Mi 15.10.03 18:27

hallo jagg!

schau mal unter [tools] - [debugger-optionen] - tabsheet 'sprach-exceptions' nach. dort findest ganz oben die checkbox 'bei delphi exceptions stoppen'.
diese deaktivierst du und schon läuft der debugger drüber

mfg, stefan


Jagg - Mi 15.10.03 21:01

ja,das habe ich jetzt gemacht,danke,aber wenn ich jetzt diese adresse eingebe sagt er mir connection reset by peer,kann man das auch umgehen ???

Jagg !