Ich habe ein COM-DLL-Projekt, und ich bin in der Lage, es in Delphi 2007 und XE8 (Stopp an Haltepunkten) zu debuggen.
Es scheint jedoch nicht möglich zu sein, dass die IDE in Delphi 10 Seattle oder 10.1 Berlin an Haltepunkten stoppt.
Meine Debugging-Schritte:
Wechseln Sie zu DEBUG (und prüfen Sie, ob diese Debug-Optionen aktiviert sind. z. B. Debug-Informationen)
regsvr32 die Projekt-DLL im Ausgabeverzeichnis
schreibe ein VBScript, das einfach das COM-Objekt erstellt und seine Methode aufruft
Setzen Sie im Debugger eine Run
Befehlszeile mit c:\windows\syswow64\cscript.exe
für 32-Bit oder c:\windows\system32\cscript.exe
für 64-Bit-Debugging
Legen Sie den Befehlszeilenparameter fest, um das VBScript auszuführen.
legt einen Haltepunkt bei der aufgerufenen Methode fest.
Drücken Sie F9
Erwartet: Stopp am Haltepunkt
In Delphi 2007 und XE8 ist alles in Ordnung, aber ich konnte es in Delphi Seattle oder Berlin nicht machen.
Was könnte hier schief gehen? Gibt es irgendwelche Einstellungen, die ich aktivieren / deaktivieren muss, um die COM-DLL unter den neuesten IDE-Versionen von Delphi zu debuggen?
Es sieht so aus, als wäre es ein Problem der IDE. Ich habe das Problem in JIRA angesprochen: Ссылка
Ich finde endlich eine Lösung in meinem Fall.
Ich muss F8 statt F9 drücken. In diesem Fall wird das CPU-Fenster mit gemischten Pascal- und Assembler-Anweisungen angezeigt, und wenn Sie F9 drücken, wird es höchstwahrscheinlich an den Unterbrechungspunkten anhalten (manchmal kommt es jedoch auch zu zufälligem Verhalten). Ich kann das so oft wiederholen wie ich will. Drücken Sie F9 direkt nicht an Haltepunkten, aber das Fenster cscript.exe erscheint während des Debuggens.
Mein Projekt ist eine 300 KB COM DLL.
Tags und Links delphi delphi-10-seattle delphi-10.1-berlin