Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi IDE-Experte debugen... (https://www.delphipraxis.net/53364-ide-experte-debugen.html)

FriFra 14. Sep 2005 23:27


IDE-Experte debugen...
 
Ich habe meinen IDE Experten etwas erweitert und plötzlich gibt es Schutzverletzungen, die ich mir nicht erklären kann... Diverse Showmessage's haben mich bisher auch nicht weitergebracht und nun wollte ich meine dll gern debuggen. Das Problem ist nur WIE soll das gehen, die dll läuft schließlich nur innerhalb der IDE :gruebel:

sakura 15. Sep 2005 00:36

Re: IDE-Experte debugen...
 
Wenn Du das DLL Projekt geladen hast, dann musst Du im Menü Run -> Parameters die BDS.EXE (im Delphi\Bin Ordner) als Host-Application definieren. Jetzt F9 drücken und wie gewohnt debuggen. Nun gut, fast, zwischendurch wirst Du wohl noch den Abwasch erledigen können :mrgreen:

...:cat:...

FriFra 15. Sep 2005 01:13

Re: IDE-Experte debugen...
 
Das funzt nicht wirklich... Es wird zwar tatsächlich eine zweite Delphi-Instamz gestartet (und läd und läd...), ABER alle meine Haltepunkte werden sofort nach F9 "ausge-x-t" und das wars dann mit dem Debugversuch. :?
Gut. wärend ich Delphi im "normalfall" bei diesem Fehler über den Taskmanager abschießen musste reichte diesmal der "Stop"-Button um die 2. Instanz zu canceln, aber eine wirkliche Lösung des Problems ist es nicht...

Ich hab jetzt übrigens den Fehler gefunden...
Vorher (Delphi crasht bei Fehler beim Aufruf der URL):
Delphi-Quellcode:
HTTP := TIdHTTP.Create(nil);
MS := TMemoryStream.Create;
try
  HTTP.Get('http://dumdidum.de', MS);

...
finally
  MS.Free;
  HTTP.Free;
end;
Nachher (alles funzt):
Delphi-Quellcode:
HTTP := TIdHTTP.Create(nil);
MS := TMemoryStream.Create;
try
  try
    HTTP.Get('http://dumdidum.de', MS);
  except
  end;

...
finally
  MS.Free;
  HTTP.Free;
end;
Ich dachte eigentlich dass schon der Try Finally Block ausreicht um Fehler abzufangen, schliesslich werden die Objekte ja freigegeben... Ich hatte nur nicht dran gedacht, dass die Indys im Fehlerfall eine Exception auslösen :oops: und genau das gefällt Delphi wohl nicht :lol:

sakura 15. Sep 2005 06:57

Re: IDE-Experte debugen...
 
Zitat:

Zitat von FriFra
Das funzt nicht wirklich... Es wird zwar tatsächlich eine zweite Delphi-Instamz gestartet (und läd und läd...),

Doch, so habe ich meine Plugins allesamt debugged.
Zitat:

Zitat von FriFra
ABER alle meine Haltepunkte werden sofort nach F9 "ausge-x-t" und das wars dann mit dem Debugversuch. :?

Das ist normal, erst wenn der Host, in diesem Fall also Delphi, Deine DLL lädt werden die (X) wieder zu (O). Ist auch logisch, denn solange die DLL nicht geladen ist kann auch nichts ausgeführt werden. Das ist somit ein optisches Feedback ob die DLL überhaupt geladen wurde.

Hinweis: hole Dir den Hier im Forum suchenDCM von Jeremy North, erstelle Dir eine Minimalkonfiguration, so dass nur das Wichtigste und Dein Plugins geladen werden. Damit senkst Du die Ladezeit erheblich :zwinker: Dafür kannst Du hier auch mal nach Hier im Forum suchenBarebones suchen.

...:cat:...


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