AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Breakpoints in D7 nicht erreichbar

Ein Thema von Nic2012 · begonnen am 9. Sep 2013 · letzter Beitrag vom 10. Sep 2013
Antwort Antwort
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.356 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: Breakpoints in D7 nicht erreichbar

  Alt 9. Sep 2013, 13:29
Hast Du wirklich "Erzeugen" genutzt (statt nur Compilieren)?
Weiterhin solltest Du Keine Kopien Deiner Ordner im Projektordner haben ("MyProject" und "MyProject-Kopie").
So etwas nimmt Delphi übel.

Refactoring ist natürlich in aktuellen Delphi-Versionen deutlich umfangreicher.
Wunder darf man aber nicht erwarten.
Dritttools kenne ich nicht.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
Nic2012

Registriert seit: 2. Mai 2012
62 Beiträge
 
#2

AW: Breakpoints in D7 nicht erreichbar

  Alt 9. Sep 2013, 13:38
Natürlich auch Compilieren, macht im Ergebnis aber keinen Unterschied.
Nein, es gibt im Projekt-Ordner keine Kopien. Das gesamte Projekt besteht aus einigen Dutzend Forms, DMs, und Units, aber nur bei diesem Modul gibt es nur sehr eingeschränkte Debug-Möglichkeiten, d.h. nur auf den letzten 1800 von insgesamt 10000 Zeilen.
  Mit Zitat antworten Zitat
CCRDude

Registriert seit: 9. Jun 2011
678 Beiträge
 
FreePascal / Lazarus
 
#3

AW: Breakpoints in D7 nicht erreichbar

  Alt 9. Sep 2013, 14:32
Die Warnung mit den Projektkopien kann man noch globaler nehmen: sind die Unit-Namen recht eindeutig? Hat mat sowas wie FormUnitMain.pas in jedem Projekt, springt der Debugger gerne zur Anzeige mal in die falsche Datei (Stand: XE, bei D7 war das auch schon so).

Ich habe früher in jugendlichem Leichtsinn und unter D7 auch lange eine Unit mit noch mehr Zeilen gehabt, und Debuggen lief dort überall - die nachgefragte Obergrenze sollte es nicht geben (zumindest nicht bei 10k Zeilen - bei meinem Negativbeispiel hat die .pas 544KB, 13K Zeilen, die .dfm 2,4MB - das lief unter D7, danach habe ich die Funktionalität in kleine Klassen in kleinen Units aufgeteilt...).
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.687 Beiträge
 
Delphi 12 Athens
 
#4

AW: Breakpoints in D7 nicht erreichbar

  Alt 9. Sep 2013, 14:37
Ich habe hier Units mit bis zu 140.000 Zeilen (natürlich automatisch generiert) und da geht das Debuggen auch ganz hervorragend.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Nic2012

Registriert seit: 2. Mai 2012
62 Beiträge
 
#5

AW: Breakpoints in D7 nicht erreichbar

  Alt 9. Sep 2013, 14:46
Danke für die zahlreichen Antworten.
Nein, Projektname bzw. die Namen der Forms, DMs und Units ist durchgehend eindeutig. Wie gesagt es ist nur diese DM. Kann es an der Vielzahl der eingebundenen Objekte ca. 200 liegen ?
Welche Erklärung gibt es, das nur knapp 20% der letzten Zeilen mit dem blauen Punkt (als potentiele Breakpoints) gesetzt ist und zumindest nur dort der Debugger halten kann ?
  Mit Zitat antworten Zitat
lowmax_5

Registriert seit: 9. Mai 2003
Ort: Münster, NRW
258 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Breakpoints in D7 nicht erreichbar

  Alt 9. Sep 2013, 14:53
Hast Du vielleicht mal Code aus dem Internet direkt in die Unit kopiert? Dann kann es an dieser Stelle auch zu Störungen kommen.

Dann schaue Dir doch die Stelle ab der die Breakpoints nicht mehr funktionieren mal genauer an. Ggf. Codeteil entfernen und prüfen, ob es dann funktioniert.

Ggf. ist auch eine Kommentarfunktion nicht korrekt gesetzt. Dieses kann auch zu einem Aussetzer führen...
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#7

AW: Breakpoints in D7 nicht erreichbar

  Alt 9. Sep 2013, 15:08
Hallo,

das von Dir beschriebene Problem kenne ich auch, aber auch bei deutlich kleineren Units und DMFs.

Einige Programme kann ich nicht Debuggen, andernorts läßt sich der Inhalt von Variabeln beim Debuggen nicht anzeigen (angeblich alles wegoptimiert). Einen Grund für dieses Verhalten von D7 kenne ich nicht, aber ich habe eine Vermutung, die ich bisher weder beweisen noch widerlegen konnte.

Bei Programmen, die viele Units (unterschiedlicher Quellen) nutzen, scheint das Problem häufiger aufzutreten, als bei 100%igen "Eigenbauten".

Mein Verdacht fällt hier auf die Kompilerschalter {$D+} und {$D-}.

Unabhängig von den Projekteinstellungen kann man diese Beiden ja auch im Quelltext unterbringen. Kommt der Kompiler an einem der beiden Schalter "vorbei", so scheint für ihn ab dort die entsprechende Bedingung zu gelten. Hierdurch kann es passieren, dass an beliebigen Stellen das Debuggen funktioniert oder eben auch nicht. Dies scheint sich aber nicht nur auf die Unit auszuwirken, in der der Schalter steht, sondern auch auf die Units, aus denen die Unit mit Kompilerschalter aufgerufen wird. Hierdurch scheint dann das Debuggen in Units ab oder bis zu bestimmten Stellen zu funktionieren oder halt auch nicht.

Bei Deinem konkreten Fall könnte es unter Umständen eventuell vielleicht (also eine extrem wage Vermutung) möglich sein, dass kurz vor der Zeile, ab der die Breakpoints setztbar sind, beim Kompilieren eine Unit aufgerufen wird, in der der Schalter {$D+} steht. Irgendwo davor wird vermutlich eine Unit kompiliert, in der der Schalter {$D-} steht und deshalb keine Debuginformationen vorhanden sind.

Aber: Nix genaues weiß man nicht.

Ab und an scheint es zu helfen hinter die Uses-Anweisungen zusätzlich ein {$D+} einzufügen. Manchmal hilfts, aber nicht immer.

Eventuell hast Du ja damit Glück.
  Mit Zitat antworten Zitat
rwalper

Registriert seit: 6. Sep 2006
48 Beiträge
 
Delphi 11 Alexandria
 
#8

AW: Breakpoints in D7 nicht erreichbar

  Alt 9. Sep 2013, 15:13
Hi, ich hatte bei D6 mal das gleiche Problem.

Probleme haben jene Zeilen bereitet, deren Zeilenende nur aus #10 statt #13#10 bestand. Ab der ersten dieser Zeilen, waren die Debug-Punkte "verrutscht".
Kontrolliere das doch einmal in einem Editor, der die Zeilenende-Zeichen anzeigt, z.B. Notepad++ (da steht dann LF statt CRLF).
  Mit Zitat antworten Zitat
Antwort Antwort

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:24 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-2025 by Thomas Breitkreuz