Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   LoadLibrary debuggen? (https://www.delphipraxis.net/204285-loadlibrary-debuggen.html)

skoschke 15. Mai 2020 08:58

LoadLibrary debuggen?
 
Hallo,

ich nutze eine in Delphi XE7 geschriebene Library
Delphi-Quellcode:
  DLLHandle := LoadLibrary(PChar(sDir + dllname));
und bekomme bei diesem Aufruf eine Exception &C0000005 access violation at 0x500618c9 : read of address 0x00002af9

Wie kann ich herausfinden wo es da kracht?
Das DLLHandle danach ist gültig und ich kann problemlos mit der DLL arbeiten.

Danke
Ciao
Stefan

TurboMagic 15. Mai 2020 09:04

AW: LoadLibrary debuggen?
 
Falls der Crash in der DLL vermutet wird:

Das Projekt mit der DLL öffnen und ausführen. Dazu vorher unter Start/Parameter
die richtige Host-Anwendung angeben. Die wird dann gestartet und man sollte im
DLL Code Breakpoints setzen können.

DIe Frage wäre z.B. was die DLL beim Laden tut. Da gab's ja glaube ich events
in die man sich hängen kann.

himitsu 15. Mai 2020 10:12

AW: LoadLibrary debuggen?
 
Die DLL muß nicht direkt im Debugger gestartet werden.
Wichtig ist nur, dass die DLL mit Debuginfos kompiliert wurde und man die Quellcodes dazu im Suchpfad
oder im aktiven Projekt, bzw. einem Projekt der Projektgruppe liegen hat.
Klar, es geht einfacher und ist dann auch immer richtig, wenn man die DLL-Source lädt, dort die EXE angibt und das dann startet. (dann hast auch die Debuginfox vom 10.3)

Man kann sich auch nach dem Start der EXE mit dem Debugger ranhängen, aber wie gesagt, wichtg sind "nur" die vorhandenen Debuginfos der DLL.


Aber ob jetzt der 10er Debugger mit den Delphi-Debuginfos vom XE7 zurecht kommt ... noch nicht probiert.


Der Debugger benutzt auch schon einen Hook, für das Laden der DLLs.
Sieht man schön im Log, wo dann hoffentlich auch stehen sollte, dass er bei dieser DLL die Debuginfos gefunden hat.


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:02 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