Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Zugriffsverletzung bei Programmende (nicht nachvollziehbar) (https://www.delphipraxis.net/61440-zugriffsverletzung-bei-programmende-nicht-nachvollziehbar.html)

Khabarakh 22. Jan 2006 11:14

Re: Zugriffsverletzung bei Programmende (nicht nachvollziehb
 
@dizzy & thkerkmann: Was ihr beschreibt, ist unmöglich, dafür trägt die VCL genügend Sorge. Der Destruktor von TComponent löscht die Komponente aus der Liste des Owners, doppeltes Freigeben ist nicht möglich.

Peter Mössinger 22. Jan 2006 11:27

Re: Zugriffsverletzung bei Programmende (nicht nachvollziehb
 
Hmm,

ich erzeuge einige Popup-Menüs dynamisch und ich werde mir nochmal genau ansehen, ob ich das richtig mache, aber es ist doch sehr seltsam, dass der Fehler nur sporadisch auftritt, oder?

Ich kann mich an folgende Situation erinnern. Ich habe für eine Schulung meines Programms einen Installer gebaut und das Programm auf allen Rechnern eines Schulungsraums installiert. Auf allen Rechnern bis auf einen lief es ohne Probleme. Bei dem einen Rechner kam der Fehler jedesmal beim Beenden des Programms, bei allen anderen Rechnern war alles OK (naja, zumindest kam der Fehler nicht).


Peter

thkerkmann 22. Jan 2006 11:45

Re: Zugriffsverletzung bei Programmende (nicht nachvollziehb
 
@Khabarakh:
Klar, du hast vollkommen recht. :oops:

Wenn man jedoch dynamisch was erstellt und es versucht 2 x freizugeben kann das schon passieren.

Da hilft konsequent FreeAndNil(meineDynamischeCompo) anstelle von meineDynamischeCompo.Free zu verwenden.
Damit wird die übergebene Referenz geNILt und ein weiteres Free führt eben zu keinem weiteren Destroy versuch mehr.

Gruss
Thomas


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:40 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz