Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Fehler beim Beenden des Programm (https://www.delphipraxis.net/92070-fehler-beim-beenden-des-programm.html)

eddy 14. Mai 2007 09:50


Fehler beim Beenden des Programm
 
Hallo Leute,

ich habe seit kurzem einen sehr seltsamen Fehler.

Nach dem Löschen einer nicht mehr benötigten TCheckBox endet mein Programm nach Ausführung von Close mit einer Fehlermeldung:

Exception EAccessViolation in Modul ....


Nach der Ausführung von Rückgängig: Löschen kann ich mein Programm ohne Fehlermeldung beenden.

Der TCheckBox sind keine Ereignisse zugeordnet und sie wird nirgendwo benutzt.

Sobald ich das Objekt Lösche oder auch nur in eine andere Unit verschiebe, erhalte ich beim Beenden des Programms wieder eine Fehlermeldung. Umbenennen ist hingegen kein Problem. Ich habe die CheckBox nun stehen lassen und Visible auf false gesetzt, aber das erklärt ja nicht, wo dieses Problem herkommt.

Hat jemand eine Idee, wo die Ursachen für diesen Fehler liegen und wie ich ihn beheben kann?

mfg
eddy

PS: Für alle, die die erste Fassung der Beschreibung gelesen haben: das Ausdokumentieren führt zum gleichen Fehler.
Habe deshalb diesen Teil aus der Beschreibung entfernt, da es nur zu Verwirrungen führt.

Luckie 14. Mai 2007 10:01

Re: Fehler beim Beenden des Programm
 
Wie erstellst du die Checkbox oder befindet sie sich zur Entwicklungszeit schon auf dem Formular? Wenn die Checkbox einen Owner hat kannst du sie nicjht selber ferigeben, weil der Owner dies auch noch mal tun will. Und dann kracht es.

hoika 14. Mai 2007 10:06

Re: Fehler beim Beenden des Programm
 
Hallo,

der Frame hat auch noch eine DFM-Datei,
da steht sie auch noch mal drin.
Einfach Auskommentieren geht nicht.
Jetzt hast du das wohl schon "versaut" ;)
Öffne mal die DFM in der IDE
und lösche sie dort auch raus.


Heiko

eddy 14. Mai 2007 10:15

Re: Fehler beim Beenden des Programm
 
Hallo,

das mit dem Ausdokumentieren funktionierte nicht, habe die Datensicherung wieder eingespielt.

Ändert aber nichts an dem beschriebenen Problem. Während der Entwicklungszeit wurde die CheckBox mit einem Mausklick eingefügt und weil sie dann doch nicht benötigt wurde ein paar Tage später wieder gelöscht.

Nach dem Start von Delphi mit CheckBox funktionert das Beenden des Programms fehlerfrei, nach dem Löschen der CheckBox gibt es den oben beschriebenen Fehler.

mfg
eddy

Christian Seehase 14. Mai 2007 11:18

Re: Fehler beim Beenden des Programm
 
Moin eddy,

das sieht für mich danach aus, als hättest Du an anderer Stelle einen Fehler, z.b. überschreiten von Grenzen eines dynamischen Arrays.
Erst dadurch, dass die Checkbox weg ist, wird dann Speicher angesprochen, der geschützt ist.

eddy 14. Mai 2007 11:28

Re: Fehler beim Beenden des Programm
 
Hallo Christian,

kannst Du mir auch noch einen Tip geben, wie man so einen Fehler finden kann? Mit F7 ab der Stelle Close in meinem Hauptprogramm habe ich bisher die Stelle noch nicht einkreisen können.

mfg
eddy


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:56 Uhr.

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