"EReadError" nach Löschen einer Funktion
-
Nachdem ich diese Funktion
void __fastcall TForm1::acLoeschenExecute(TObject *Sender){}
aus meinem Code entfernt habe, erhielt ich folgende Fehlermeldung:
Im Projekt Benutzer.exe ist eine Exception der Klasse EReadError aufgetreten. Meldung: 'Ungültiger Wert der Eigenschaft'. Prozeß wurde angehalten. Mit Einzelne Anweisungen oder Start fortsetzen.
*Beim Fortsetzen kam dann folgende (fast gleiche) Fehlermeldung:
Im Projekt Benutzer.exe ist eine Exception der Klasse EReadError aufgetreten. Meldung: 'Fehler beim Lesen von acLoeschen->OnExecute: Ungültiger Wert der Eigenschaft'. Prozeß wurde angehalten. Mit Einzelne Anweisungen oder Start fortsetzen.
*Beim Fortsetzen kam dann zum Schluss nochmal folgendes:
Fehler beim Lesen von acLoeschen->OnExecute:Ungültiger Wert der Eigenschaft.
*Wie kann man diesen Fehler beheben?
-
acLoeschen ist vermutlich eine TAction?
Dann steht vermutlich für OnExecute noch die von Dir gelöschte Methode drin.
Schau doch mal im Objekinspektor und lösche die ggf. auch noch raus.Gruß,
Alexander
-
Ja, acLoeschen ist eine TAction, aber ich habe acLoeschen aus der ActionList komplett entfernt und es wird auch nirgendwo mehr die Aktion acLoeschen verwendet. Gibt es noch eine andere Stelle, an der ich vergessen haben könnte etwas zu entfernen?
MfG Anika
-
Dann schau doch mal in die DFM-Datei und such danach.
Vielleicht hast Du die Methode irgendeinem anderen Event (z.B. in einem
Button) zugeordnet.Gruß,
Alexander
-
evtl. im header-file
-
Jester2000 schrieb:
evtl. im header-file
Wie?
Ich würde vermuten, daß es dann schon beim Kompilieren einen Fehler geben
müßte, oder?Gruß,
Alexander
-
stimmt, aber deswegen hab ich ja auch "evtl" geschrieben, wei ich mir nicht sicher war
-
Habe sowohl die DFM Datei als auch den Header nochmal durchsucht. In beiden ist acLoeschen nicht mehr vorhanden. Ich stehe vor einem Rätsel.
Beim Kompilieren wird kein Fehler angezeigt, erst kurz nach dem Start des Programmes wird es abgebrochen.
MfG Anika
-
Niky27 schrieb:
Habe sowohl die DFM Datei als auch den Header nochmal durchsucht. In beiden ist acLoeschen nicht mehr vorhanden.
Du weißt, daß Du nach acLoeschenExecute suchen mußt?
Zur Not würde ich mal in allen beteiligten Dateien danach suchen.
Ich kann mir nur schwer eine andere Möglichkeit vorstellen.Gruß,
Alexander
-
Also gut, ich habe jetzt die *.obj, *.cpp, *.h, *.dfm alle auf "Loeschen", "acLoeschen" und "acLoeschenExecute" abgesucht. Es ist nichts drin, gar nichts. Ich weiß wirklich nicht mehr weiter.
Ich habe auch den Builder neu gestartet und neu compiliert (man weiß ja nie wofür es gut ist), aber es hat sich nichts getan. Hilfe!!!
MfG Anika
-
Hast Du Dir schon mal die Hilfe zum Thema EReadError durchgelesen.
Alles deutet für mich darauf hin, daß eine Eigenschaft einen ungültigen
Wert in der entsprechenden Resourcendatei (vermutlich die DFM-Datei) hat.
Und irgendwo muß das stehen. Der BCB erfindet sowas im allgemeinen nicht
einfach (ich habe das zumindest noch nicht erlebt).
Hast Du auch schon mal die Windows-Suchfunktion über alle Dateien und
Laufwerke für acLoeschen ausprobiert?Gruß,
Alexander
-
So, ich habe dann mal weitergesucht. Wenn ich bei "Enthaltener Text" "acLoeschenExecute" eingebe, dann erhalte ich als Ergebnis der Suche "Benutzer.exe". Also ich habe eine Projektgruppe "BenutzerGruppe.bpg" und darin ist die Benutzer.exe mit ganz vielen Formularen unter anderem auch meinem. Aber ich weiß immer noch nicht, wie ich die Fehlermeldung weg bekomme.
MfG AnikaP.S.: Klar habe ich die Hilfe gelesen, es hat mir nur nicht geholfen.
-
Ich habe mir nochmal Dein erstes posting angeschaut und für mich entsteht
der Eindruck, daß irgendwo in dem Projekt noch diese Action acLoeschen
rumgeistert. Die Fehlermeldung besagt ja, daß die Eigenschaft OnExecute
für dieses Objekt einen ungültigen Wert hat.
Also entweder ist das Objekt noch irgendwo im Source-Code, dann müßte man
es aber mit einer Suche nach acLoeschen finden, oder in irgendeiner der
kompilierten (Zwischen-)Dateien.
Manchmal soll es ja auch schon geholfen haben, alle *.obj- und *.tds-Dateien
zu löschen.
Du hast auch das Projekt noch mal über "neu erzeugen" erstellt?Gruß,
Alexander
-
Danke!!! Neu erzeugen hat geholfen. Hatte mich nicht so richtig daran getraut, weil das eigentlich Programm nicht von mir ist und ich nur ein paar Sachen eingefügt habe...
Jetzt klappt es.
MfG Anika