Seite 1 von 2

Altd() und kein Stop

Verfasst: Mo, 05. Mär 2018 18:53
von Manfred
kann jemand von euch mal prüfen, ob seine Workbench bei altd() stehen bleibt, oder darüber hinweg geht? Ich habe die Version 906 gerade hier laufen.

Re: Altd() und kein Stop

Verfasst: Mo, 05. Mär 2018 19:44
von Werner_Bayern
Geht wie immer. Hast sicherlich was übersehen... Kein Debug-Modus, oder kommt gar nicht an die Altd-Stelle?

Re: Altd() und kein Stop

Verfasst: Mo, 05. Mär 2018 19:46
von Manfred
alles eingebunden. Und wenn ich einen Breakpoint per F5 direkt davor, oder dahinter setze, dannbleibt er genau da stehen. Nur nicht bei altd().
Du hast die neueste Version der WB? IsDebug() liefert auch .T.

Re: Altd() und kein Stop

Verfasst: Mo, 05. Mär 2018 20:01
von Werner_Bayern
yep.

Hast mal Projekt neu erstellen lassen? Abhängigkeiten neu erstellen lassen?

Re: Altd() und kein Stop

Verfasst: Mo, 05. Mär 2018 20:16
von Manfred
ich erstelle grundsätzlich immer neu. Alle Obj werden vorher gelöscht. Ich bin auch sehr überrascht, ich bin der Meinung, das es noch vor kurzem klappte. Ich habe es mit einem anderen Projekt, einer Vorversion von Xbase++ versucht auf einem anderen PC. Derselbe Effekt.

Re: Altd() und kein Stop

Verfasst: Mo, 05. Mär 2018 20:58
von Jan
Ich hab bislang auch keine Probleme mit AltD(). Allerdings mit der 906 noch nicht ausprobiert. Aber mit der Vorversion noch.

Jan

Re: Altd() und kein Stop

Verfasst: Mo, 05. Mär 2018 21:55
von Tom
Sind das eXpress++-Projekte? Darin wäre das die Tastenkombination für DC-Dot. Die kannst Du konfigurieren.

Re: Altd() und kein Stop

Verfasst: Mo, 05. Mär 2018 23:02
von Werner_Bayern
Zeig doch mal die 3-4 Zeilen Code, wo das nicht geht. Altd() funktioniert z. B. nicht in Codeblöcken.

Re: Altd() und kein Stop

Verfasst: Di, 06. Mär 2018 0:15
von AUGE_OHR
Manfred hat geschrieben: Mo, 05. Mär 2018 20:16 ich erstelle grundsätzlich immer neu. Alle Obj werden vorher gelöscht.
siehe doch mal in deine *.XPJ Datei, wobei der Name = EXE Name ist, nach BREAKPOINT und lösche die ganze Zeile :!:

---

in meinen Verzeichnis liegen 3 x XPJ Files.
1.) Project.XPJ
2.) Release.XPJ
3.) xxx.XPJ

wie schon gesagt legt der Debugger die xxx.XPJ Datei für jedes EXE an.
wenn es Probleme mit ALTD() gibt lösche ich die xxx.XPJ im Zweifelsfalle ...

Re: Altd() und kein Stop

Verfasst: Di, 06. Mär 2018 10:05
von brandelh
Bei meinem Test Projekt hat der Debugger gar nicht mehr angehalten (egal ob F5 Breakpoint oder altd()) ...
Nach dem Löschen der persönlichen XPJ Datei, geht es wieder, danke Jimmy für den Tipp

Re: Altd() und kein Stop

Verfasst: Di, 06. Mär 2018 10:27
von Klaus Schuster
Hallo Manfred,

beim Einsatz von xppdbg aus der Befehlszeile erlebe ich dies nahezu täglich. Eine Systematik dahinter konnte ich noch nicht feststellen.

Re: Altd() und kein Stop

Verfasst: Di, 06. Mär 2018 10:39
von Manfred
Das Löschen der persönlichen XPJ Datei hiflt auch nicht.

Re: Altd() und kein Stop

Verfasst: Di, 06. Mär 2018 11:41
von Werner_Bayern
WB, Projekt / Einstellungen / Compiler / Debug-Informationen einfügen gesetzt?

Re: Altd() und kein Stop

Verfasst: Di, 06. Mär 2018 12:08
von brandelh
Die Projekt Datei anzeigen lassen und prüfen ob DEBUG=YES steht ... einfacher als die vielen kleinen Häkchen ;-)

Re: Altd() und kein Stop

Verfasst: Di, 06. Mär 2018 12:14
von Manfred
öhm, nur ne kurze Frage: Wenn ich im Einzelschrittmodus das Programm Schritt für Schritt ablaufen lassen kann, dann ist doch der Debugmodus eingeschaltet, oder?

Re: Altd() und kein Stop

Verfasst: Di, 06. Mär 2018 12:42
von brandelh
ja

Re: Altd() und kein Stop

Verfasst: Di, 06. Mär 2018 12:45
von Manfred
Puh, dann bin ich ja beruhigt. Ich dachte schon meine Hinweise direkt zu Anfang, das Breakpoints klappen nur altd() nicht wäre kein Indiz dafür, dass alles eingebunden ist.

Re: Altd() und kein Stop

Verfasst: Di, 06. Mär 2018 12:47
von Werner_Bayern
M. W. n. ja, aber bei Dir weiß man ja nie :badgrin:

Re: Altd() und kein Stop

Verfasst: Di, 06. Mär 2018 12:48
von Manfred
@Tom,
das mit dem express++ verstehe ich nicht so ganz. Eigentlixh bin ich der Meinung, das es erst mit dem Update auf die neueste Xbase Version passiert ist. Da habe ich natürlich alle express++ Sache auch neu kompiliert.

Re: Altd() und kein Stop

Verfasst: Di, 06. Mär 2018 12:48
von Manfred
@Werner,
boh bist Du gemein..... :angry2:

Re: Altd() und kein Stop

Verfasst: Di, 06. Mär 2018 14:56
von Werner_Bayern
Mach doch mal ein neues Projekt, 3-5 Zeilen Code und Zeile 2 ein altd(). Was passiert?

Re: Altd() und kein Stop

Verfasst: Di, 06. Mär 2018 15:19
von Manfred
habe ich gemacht. Da klappt es. So ein Mist. Was ist da jetzt anders?

Re: Altd() und kein Stop

Verfasst: Di, 06. Mär 2018 15:20
von Jan
Bei den Breakpoints besteht seit Anbeginn in VX/Workbench das Problem, das es aktive und ungültige gibt. Das kann man optisch nicht unterscheiden, die sehen immer gleich markiert aus. Im realen Debuggerbetrieb stoppt der aber nicht bei den ungültigen.

Sehen kann man das nur über Ansicht->Debug-Fenster->Haltepunkte. In der dritten Spalte steht der Status drin, ob Aktiv oder Ungültig. Da kann man dann übrigens auch Bedingungen einstellen, bei welchem Wert der Breakpoint gültig werden soll etc. Etwas umständlich der Weg dahin für solche Bedingungen, aber auf meine Anregung hin will Alaska das in das Kontextmenü im Codefenster übernehmen. Irgendwann mal.

Das kommt meistens durch Codeänderungen zustande. Da wird eine Zeile eingeschoben, und der Breakpointindex bekommt das nicht bzw. nur fehlerhaft mit.

Sowas erklärt dann, warum der an (manchen) Breakpoints nicht stehen bleibt. Ich habe mir inzwischen angewöhnt, an den relevanten Stellen nach Codeänderungen mit Zeilenverschiebungen den Breakpoint per F5 einmal aus und dann wieder an zustellen. Lästig, aber so stoppt der garantiert immer.

Ein Überspringen von AltD() aber natürlich immer noch nicht. Da würde ich vermutlich einfach "Projekt->Projekt neu erstellen" aufrufen in der Hoffnung, daß das was repariert.

Jan

Re: Altd() und kein Stop

Verfasst: Di, 06. Mär 2018 15:27
von Manfred
hilft auch nicht.
Also mein Verständnis sagt mir, wenn Debuginfos eingebunden sind, dann muß der bei altd() stehen bleiben. So war das bisher immer. Wenn "weich" gesetzter Breakpoint nicht klappt, dann ist das zwar blöde, aber es kann passieren. Alles andere darf einfach nicht. Das ist für mich wie ein Menue einbauen und das Programm arbeitet es mal ab und dann wieder nicht. Je nach Wetterlage.
Ich habe das problem mal an Alaska geschickt, mal sehen, was die dazu sagen. Ob es ihrer Meinung nach überhaupt möglich sein kann.

Re: Altd() und kein Stop

Verfasst: Mi, 07. Mär 2018 19:56
von Jan
Alaska hat PDR 6992 eingestellt.

Trifft zwar nicht exakt Manfreds EIngangsproblem, gehört aber doch ein wenig mit in die Ecke.

Jan