Entwickler-Ecke

Sonstiges (Delphi) - Bis Cursorposition ausführen (F4) geht nicht


J.Borchert - Do 20.04.17 14:54
Titel: Bis Cursorposition ausführen (F4) geht nicht
Leider habe ich in den Projekteigenschaften rumgemacht und nun geht das Ausführen bis Cursorposition nicht mehr.

Kann mir einer einen Tip geben, was ich vielleicht ändern kann, um wieder "alte Lage" zu haben ?


JoelH - Fr 21.04.17 09:24

aber normales Debugging geht?


J.Borchert - Sa 22.04.17 09:53

Nein, "Untersuchen" ist auch inaktiv.

user defined image


Delete - Sa 22.04.17 10:40

- Nachträglich durch die Entwickler-Ecke gelöscht -


J.Borchert - Sa 22.04.17 15:36

Danke für dein Hilfe und Zeit. Kompilieren und Debuggen geht. F4 immer noch nicht. Ich probiere mal das Ganze mit einem neuen Programm.


jaenicke - Sa 22.04.17 15:52

Auf dem Screenshot von dem Menü ist das Programm nicht gestartet. Deshalb ist das so auch normal.

Poste doch einmal einen Screenshot davon, wenn du an einem Haltepunkt angekommen bist. Am besten von der ganzen IDE, wobei du den Quelltext natürlich unkenntlich machen kannst, wenn du möchtest.


J.Borchert - Sa 22.04.17 18:17

Das Programm hält nicht am Haltepunkt an. Hier ein Bild, wo bereits die Zeile (der Dialog) nach dem Haltepunkt angezeigt wird, also werden scheinbar beim Starten die Haltepunkte vom Programm deaktiviert ? (kleines Kreuz auf dem roten Kreis) Den ersten Dialog habe ich verneint.

user defined image

Das Menü "Start" an der Stelle:

user defined image


J.Borchert - Sa 22.04.17 18:26

Es scheint am Quelltext zu liegen. In einem neuen Programm geht alles, auch bis Cursor F4.


Delete - Sa 22.04.17 19:32

- Nachträglich durch die Entwickler-Ecke gelöscht -


jaenicke - Sa 22.04.17 20:42

Da das Programm läuft, aber keine gültigen Debuginformationen geladen sind, wurden diese entweder nicht einkompiliert oder passen nicht zum Quelltext.

Kann es sein, dass du die Buildkonfiguration auf Release gestellt hast? Oder in den Projektoptionen die Debuginformationen deaktiviert hast?


J.Borchert - So 23.04.17 12:52

Stand tatsächlich auf Release. Nach Wechsel auf Debug aber dennoch keine Veränderung.

Was wäre denn der Unterschied ?

In den Projektoptionen die Debuginformationen sind aktiviert.


J.Borchert - So 23.04.17 14:06

Ich habe jetzt mal die *.dproj durch eine "jungfräuliche" Datei eines andern Programms ersetzt. Jetzt scheint der Fehler weg zu sein.

http://www.jb-online.de/xBeam2.dproj ist die "defekte" Konfiguration.

Ich habe versucht, Unstimmigkeiten zu erkennen, da habe ich aber nicht genug Ahnung..... Sollte noch einer von Euch die Muße besitzen und etwas entdecken, wäre ich dankbar.

Danke allen, die mich unterstützt haben.


jaenicke - Mo 24.04.17 07:14

Das ist sehr einfach:
Du hast einen eigenen DCU-Ausgabepfad gesetzt (E:\Delphi_xe2\Borland\xBeam2\), darin aber leider nicht die Platzhalter für Plattform und Buildkonfiguration aus dem Standard übernommen... der ist also für Debug und Release identisch. :shock:
Es hat schon einen Grund, dass da .\$(Platform)\$(Config) drin steht. ;-)

Denn als du jetzt die Buildkonfiguration umgeschaltet hast, hat der Compiler zum Quelltext passende .dcu Dateien gefunden. Dass du an den Projektoptionen etwas geändert hast, kann der Compiler ja nicht wissen. Deshalb hat er dann die .dcu Dateien aus dem Build als Release benutzt.

Du musst dann das Projekt neu erstellen oder die .dcu Dateien vorher löschen. Sinnvoller ist aber die Platzhalter für Plattform und Buildkonfiguration in den Pfad einzubauen wie es gedacht ist.


J.Borchert - Di 02.05.17 17:34

Das war es. Danke für die Erklärung. Ich trage öfter Projekte von einem Rechner zum anderen, oder auf Reisen, dann ist der Pfad oftmals falsch bzw. muß korrigiert werden.

Danke für Eure Hilfe !


jaenicke - Di 02.05.17 19:18

Das haben wir sehr einfach gelöst. Bei uns im Entwicklerteam gibt es grundsätzlich auf jedem Rechner, egal ob Desktop-PC oder Laptop, ein Laufwerk O als Partition. Darauf liegen sowohl die Quelltexte als auch die Ausgabepfade. Auf welchem Rechner man sich dann befindet, ist so egal.

Dort gibt es auch für die kompilierten Units feste Ausgabepfade pro Projekt.