![]() |
Procedure / Function sauber beenden
Hi,
wie kann ich einer procedure bzw. funktion "sagen" das sie immer am ende rauslaufen soll. Egal ob mitten drin eine exception oder sonstwas passiert ist. Im moment ist das bei mir so.
Delphi-Quellcode:
Danke im voraus
procedure xy;
begin // mach ganz viel // und nochmehr // hier passiert was und er springt raus procedureende:=True; //<-- hier kommt er dann nie hin end; |
Re: Procedure / Function sauber beenden
Delphi-Quellcode:
Try
... finally //hier ... end; |
Re: Procedure / Function sauber beenden
Dieses Try-Finaly heißt zu deutsch soviel wie "Resourcenschutzblock"
Delphi-Quellcode:
O := TMyObject.Create;
try // mach was finally O.Free; end;
Delphi-Quellcode:
M := GetMem(100);
try // mach was finally FreeMem(M); end; |
Re: Procedure / Function sauber beenden
Ah super. Danke. Und das klappt auch wenn innerhalb des try eine procedure aufgerufen wird die auch nicht sauber beendet weil was passiert ist? Weil die sachen die innerhalb des try dürfen ruhig "unsauber" beenden. Das stört mich nicht. Wichtig ist nur das die Hauptprocedure sauber wieder rauskommt.
|
Re: Procedure / Function sauber beenden
Ja finally wird immer ausgeführt
|
Re: Procedure / Function sauber beenden
Super. Vielen vielen dank. Das löst ein DICKES problem.
Obwohl das problem meistens ca. 60cm vorm monitor sitzt :-D |
Re: Procedure / Function sauber beenden
Zitat:
Sehr schwerwiegende Fehler, wo gleich die ganze Anwendung radikal abstürzt, werden nicht abgefangen. Dazu zählt auch ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:01 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