Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Die Delphi-IDE (https://www.delphipraxis.net/62-die-delphi-ide/)
-   -   Zugriffsverletzung beim Zugriff auf ein Modul (https://www.delphipraxis.net/211676-zugriffsverletzung-beim-zugriff-auf-ein-modul.html)

NoName1 21. Okt 2022 12:16

Zugriffsverletzung beim Zugriff auf ein Modul
 
Liste der Anhänge anzeigen (Anzahl: 1)
Guten Tag,
ich habe ein Modul erstellt, in dem sich Tabellen, DataSources auch TIBSQLs befinden.
Beim neuen Aufruf des Moduls bekomme ich die im Anhang befindliche Meldung. Der Quellcode wird angezeigt, aber die Design-Ansicht kann ich nicht mehr aufrufen. Das Modul ist sehr umfangreich und ich möchte es ungern neu erstellen.
Was kann ich machen damit das Modul wieder korrekt geladen wird?

Vielen Dank für die evtl. Hilfe im Voraus

Jasocul 21. Okt 2022 12:24

AW: Zugriffsverletzung beim Zugriff auf ein Modul
 
Lesen von Adresse 00000000 deutet darauf hin, dass auf etwas zugreifst, das noch gar nicht existiert. In der Regel ist das ein noch nicht erzeugtes Objekt.
Da du schreibst, dass das bei einem neuen Aufruf passiert, ist die Wahrscheinlichkeit groß, dass genau dieses Modul nich keine Instanz hat. Da fehlt eventuell ein Create.

Ansonsten hilft es natürlich auch, dort den Debugger zu nutzen.

himitsu 21. Okt 2022 12:58

AW: Zugriffsverletzung beim Zugriff auf ein Modul
 
Beim Laden es Moduls in der IDE?

Sollte da nicht auch das OnError des DFM-Readers anschlagen und dir anbieten
* Abbrechen (DFM nicht laden und es bleibt unverändert)
* Ignorieren (die Komponente/Property überspringen und den Rest lasen ... z.B. Git-DIFF/History läasst sich dann sehen, was nun fehlt)

Ansonsten kannst du mit einer zweiten IDE kannst du auch eine andere IDE debuggen, wo du dann das Modul öffnest und (vielleicht) siehst wo es knallt, bzw. was dazu geführt hat.
Hast auch die passenden Projekte/Quzellcodes geladen, dann wird es auch einfacher. (Code von eigenen Komponenten, bzw. Fremdkomponenten und die VCL/RTL ist ja auch noch da)

Oder man schleust Eurekalog/MadExcept/... in die IDE ein und bekommt von da einen Stacktrace.


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:53 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 by Thomas Breitkreuz