Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - von a nach c aber nicht über b


dr.niemand - Mo 15.09.03 22:24
Titel: von a nach c aber nicht über b
Ich habe einen code:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
begin

try
//allemöglichenanweisungen;
//(ne datei herunterladen um genau zu sein ;-));
.
.
.
except
//Fehlermeldung in ein memo schreiben;
.
.
.
end;

//dinge, die nicht asgeführt werden sollen, wenn die fehlermeldung geschrieben wurde;
.
.
.
end;


so. ich hoff mal, des ist verständlich (wenn ichn richtigen code gepostet hätte, hätt ja doch einer durchgeblickt^^)

und wie erreich ich des, dass wenn except eintritt, dass dan der rest von der funktion übersprungen wird? mit goto?

MfG Hannes

PS: Ich hab des jetzt mit try und except versucht, is allerdings nicht wirklich das ware (also bitte weiterhin in den Thread [http://www.delphi-forum.de/viewtopic.php?t=16367]schreiben ^^)
PPS: ja dieser thread ist so ne art vortsezung von diesem [http://www.delphi-forum.de/viewtopic.php?t=16367]....
PPPS:wahrscheinlich hab ichs irgendwie total unverständlich gesagt :-( user defined image


Brueggendiek - Mo 15.09.03 22:45

Hallo!

Das sieht bei mir so aus:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
var ok:Boolean;

begin
...

  ok:=true;
  try
//mach was

  except
//fehler
  ok:=false;
  end;

  if ok then
  begin
//kein Fehler, kein except
  end;
end;


Gruß

Dietmar Brüggendiek


UC-Chewie - Di 16.09.03 00:36

Oder wenn man sich 4 Byte Stackspeicher sparen will:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
begin
  try
    //versuch was
  except
    //war wohl nix
    Exit;
  end;
  //mach was andres
end;


dr.niemand - Di 16.09.03 15:14

UC-Chewie hat folgendes geschrieben:
Oder wenn man sich 4 Byte Stackspeicher sparen will:

Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
begin
  try
    //versuch was
  except
    //war wohl nix
    Exit;
  end;
  //mach was andres
end;

klappt THX
(des andere ist auch gut, aber ich hab wie gesagt schon viel zu viele schleifen :-()