Zusatz DLL debuggen [ERLEDIGT]

Xbase++-IDE - Workbench, Visual Xbase

Moderator: Moderatoren

Antworten
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 18151
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Zusatz DLL debuggen [ERLEDIGT]

Beitrag von Manfred » Mi, 29. Aug 2018 8:58

Hi,
folgendes Problem. Wenn man Bibliotheken erstellt hat und die in DLL auslagert, dann werden diese ja nicht automatisch im Quelltext mit eingebunden. Also kann man sie beim Debuggen erst "sehen", wenn etwas daraus aufgerufen und durch den Einzelschrittmodus in die WB geladen werden. So weit so gut. Das ist aber blöde, wenn ich keinen Breakpoint oder Altd() darin stehen habe. Hat jemand eine Idee, wie man die PRG ohne sie ins Projekt mit einzubinden direkt mit geöffnet bekommt um dann eine Breakpoint zu setzen zum Debuggen? Wenn sie einmal auf waren, werde sie ja nicht im Projekt mitgespeichert beim Beenden als geöffnet sondern müssen jedesmal wieder neu abgearbeitet werden.
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite

Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 13141
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Kontaktdaten:

Re: Zusatz DLL debuggen

Beitrag von Jan » Mi, 29. Aug 2018 9:03

Moin Manfred,

ich behelfe mir damit, das ich den Aufruf der Funktion mit dem Breakpoint versehe. Wenn die dann erstmal im Debugger mit geladen ist, dann kann ich auch in den DLL-Funktionen (alle, nicht nur die aufgerufene) Breakpoints setzen, die angesprungen werden.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.

Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 18151
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Zusatz DLL debuggen

Beitrag von Manfred » Mi, 29. Aug 2018 9:12

dazu mußt du die Funktion aber erstmal aufgerufen haben. Und wenn Du Pech hast und die Wb schließt und vorher den BP aus versehen oder warum auch immer gelöscht hast, dann klappt das auch nicht mehr. Wenn der BP aus der XPJ Datei verschwunden ist dürfte das nicht mehr klappen. Oder wie meinst Du das?
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite

Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 13141
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Kontaktdaten:

Re: Zusatz DLL debuggen

Beitrag von Jan » Mi, 29. Aug 2018 9:56

Jetzt kann ich Dir nicht ganz folgen. Du rufst doch aus der exe heraus eine Funktion in der dll auf. Und genau den Aufruf kannst Du doch mit einem Breakpoint versehen. Bist Du dann erstmal in der dll drin, kannst Du darin Breakpoints setzen ohne Ende wo immer Du die brauchst.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.

Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 14594
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Kontaktdaten:

Re: Zusatz DLL debuggen

Beitrag von brandelh » Mi, 29. Aug 2018 10:11

Ist da nicht ein Schalter beim Debugger, ob man DLL Funktionen anzeigen oder überspringen soll ?
Im Prinzip kann man vor die Funktion der DLL einen breakpoint setzen und dann im Einzelschritt weiter ...
Gruß
Hubert

georg
Foren-Administrator
Foren-Administrator
Beiträge: 2243
Registriert: Fr, 08. Feb 2008 21:29

Re: Zusatz DLL debuggen

Beitrag von georg » Mi, 29. Aug 2018 10:18

Tja, einer der Gründe, warum ich den XppDbg so liebe: das geht das auch mit den eingebundenen DLLs direkt zum Programmstart ...
Liebe Grüsse aus der Eifel,

Georg S. Lorrig
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.

Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 18151
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Zusatz DLL debuggen

Beitrag von Manfred » Mi, 29. Aug 2018 10:36

@Hubert,
das stimmt, ein Schalter besagt beim Laden von DLL anhalten. den habe ich gesezt, das passiert aber nur direkt am Anfang und dann nicht wieder. Und das nervt, weil er jedesmal hält, wenn die Initi DLL geladen werden.
@Jan,
manche Funktionen werden aus einer Eventschleife heraus aufgerufen über Pushbutton und da gibt es nichts, wo man angreifen kann. Oder aus einem Codeblock heraus, oder sonstwo. Ansonsten wäre das eine Möglichkeit. Dann würde ich aber hier nicht fragen. :roll:
@Georg,
bist Du sicher, das er das macht? Wenn ja, erläutere bitte was Du genau meinst, ich kann mich nämlich daran aus alten zeiten nicht mehr erinnern.
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite

Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 18151
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Zusatz DLL debuggen

Beitrag von Manfred » Mi, 29. Aug 2018 10:42

nachtrag,
der Schalter bzgl. DLL gilt nur für DLLload().
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite

Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 13141
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Kontaktdaten:

Re: Zusatz DLL debuggen

Beitrag von Jan » Mi, 29. Aug 2018 11:30

Manfred hat geschrieben:
Mi, 29. Aug 2018 10:36
Dann würde ich aber hier nicht fragen. :roll:
Doch, manchmal schon. Manchmal steht man halt auf dem Schlauch und sieht den Wald vor lauter Bäumen nicht mehr.

In solchen Fällen, wie Du die jetzt skizziert hast, mach ich das dann teilweise ziemlich brachial: Ich schreib mir eine kleine Dummy-Funktion mit dem Inhalt des Codeblocks, und rufe im Codeblock diese Dummy-Funktion auf. Dann kann ich auch sowas debuggen. Nicht schön aber hilft.

Ansonsten würde ich sagen: Till hat diese Woche Support-Dienst. Einfach mal ihn fragen.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.

Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 18151
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Zusatz DLL debuggen

Beitrag von Manfred » Mi, 29. Aug 2018 11:42

habe ich schon gemacht, bisher aber ohne Reaktion von der Seite.
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite

georg
Foren-Administrator
Foren-Administrator
Beiträge: 2243
Registriert: Fr, 08. Feb 2008 21:29

Re: Zusatz DLL debuggen

Beitrag von georg » Mi, 29. Aug 2018 12:09

Hallo, Manfred -


etwa so:
xppdbg.png
xppdbg.png (36.52 KiB) 1084 mal betrachtet
Die unter W:\User\... gelisteten Programme sind Bestandteil einer selbst erstellten DLL (oder, genauer: mehrere, selbst erstellter DLLs).
Liebe Grüsse aus der Eifel,

Georg S. Lorrig
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.

Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 18151
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Zusatz DLL debuggen

Beitrag von Manfred » Mi, 29. Aug 2018 12:22

stimmt, habe ich nie bemerkt. verdammt. also können die,wenn die wollten
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite

Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 14594
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Kontaktdaten:

Re: Zusatz DLL debuggen

Beitrag von brandelh » Mi, 29. Aug 2018 13:43

Ähm .... die DLL muss aber auch mit /DEBUG compiliert worden sein !
Sonst fehlen die debug Infos.
Gruß
Hubert

Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 18151
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Zusatz DLL debuggen

Beitrag von Manfred » Mi, 29. Aug 2018 13:49

Hubert,
daran hätte ich jetzt wirklich nicht gedacht.... :lol:
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite

Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 18151
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Zusatz DLL debuggen

Beitrag von Manfred » Do, 30. Aug 2018 10:49

haha,
das Problem ist gelöst.
Wenn das Programm den ersten Schritt im Debugger gelaufen ist, dann gibt es 2 Möglichkeiten die eingebundenen PRG zu sehen.
1) SHIFT+ALT+6
oder
2) Ansicht Debugfenster Module

Jetzt sieht man die PRG und kann sie anklicken und sie werden direkt in die WB geladen...
Das sieht jetzt erstmal gut aus. Mal sehen, was sich tut.
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite

Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 13141
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Kontaktdaten:

Re: Zusatz DLL debuggen [ERLEDIGT]

Beitrag von Jan » Do, 30. Aug 2018 12:35

Interessant. Danke für die Hinweise. Das muß ich mir mal merken.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.

Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 18151
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Zusatz DLL debuggen [ERLEDIGT]

Beitrag von Manfred » Do, 06. Sep 2018 9:12

Ganz so einfach scheint es aber nicht zu sein. hat es jemand schonmal versucht?
Ich habe es so probiert.
Programm gestartet und dann direkt die Module anzeigen lassen nach den ersten Debugschritten. In dem fenster ein Modul angeklickt, damit es geöffnet wird und dann einen Breakpoint gesetzt, wo ich als nächstes landen werde und halten möchte. Das klappt nicht. Es ist sogar so, das sich die WB aufhängt, wenn ich nach dem Breakpoint setzen weiter mache. Das habe ich 2x mindestens reproduzieren können. Ob es Zufall ist? Keine Ahnung, ich teste noch. Aber so, wie ich es mir vorstelle, scheint es nicht zu klappen.
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite

Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 14548
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Kontaktdaten:

Re: Zusatz DLL debuggen

Beitrag von Martin Altmann » Do, 06. Sep 2018 9:41

Was die Frage aufwirft:
brandelh hat geschrieben:
Mi, 29. Aug 2018 13:43
Ähm .... die DLL muss aber auch mit /DEBUG compiliert worden sein !
Sonst fehlen die debug Infos.
Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/

Mitglied der XUG Osnabrück
stellv. Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.

georg
Foren-Administrator
Foren-Administrator
Beiträge: 2243
Registriert: Fr, 08. Feb 2008 21:29

Re: Zusatz DLL debuggen [ERLEDIGT]

Beitrag von georg » Do, 06. Sep 2018 12:37

Hallo, Martin -


zumindest mit dem XppDbg kann ich kein Modul öffnen, das nicht mit /Debug compiliert wurde. Dann fehlen nämlich die Informationen über Zeilennummern etc. Ich gehe aber mal davon aus, dass Manfred das richtig gemacht hat.

@Manfred: mal mit XppDbg versucht? Geiles Teil!
Liebe Grüsse aus der Eifel,

Georg S. Lorrig
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.

Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 18151
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Zusatz DLL debuggen [ERLEDIGT]

Beitrag von Manfred » Do, 06. Sep 2018 13:37

Georg,
das stimmt, aber Xppdbg kann nicht Mousover und anzeigen was gerade angesagt ist als Tooltip. Und evtl. noch viel andere Dinge nicht, an die ich mich in der WB gewöhnt habe.
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite

georg
Foren-Administrator
Foren-Administrator
Beiträge: 2243
Registriert: Fr, 08. Feb 2008 21:29

Re: Zusatz DLL debuggen [ERLEDIGT]

Beitrag von georg » Do, 06. Sep 2018 13:42

Hallo, Manfred -


wenn es nur um ein Problem in einer Deiner DLLs geht, kann man auch mal für ein, zwei Läufe den XppDbg verwenden. Du darfst danach ja wieder zur WB greifen. bestimmt!
Liebe Grüsse aus der Eifel,

Georg S. Lorrig
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.

Benutzeravatar
Wolfgang Ciriack
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2434
Registriert: Sa, 24. Sep 2005 9:37
Wohnort: Berlin
Kontaktdaten:

Re: Zusatz DLL debuggen [ERLEDIGT]

Beitrag von Wolfgang Ciriack » Do, 06. Sep 2018 13:50

wenn es nur um ein Problem in einer Deiner DLLs geht, kann man auch mal für ein, zwei Läufe den XppDbg verwenden. Du darfst danach ja wieder zur WB greifen. bestimmt!
Dann kann er auch gleich das DLL-Projekt mit den Prgs laden, Breakpoints setzen und laufen lassen :D
Viele Grüße
Wolfgang

georg
Foren-Administrator
Foren-Administrator
Beiträge: 2243
Registriert: Fr, 08. Feb 2008 21:29

Re: Zusatz DLL debuggen [ERLEDIGT]

Beitrag von georg » Do, 06. Sep 2018 14:48

Hallo, Wolfgang -


so, wie sich Manfred ausdrückt, geht das eben nicht: viewtopic.php?f=15&t=10668#p124732

Daher mein Rat, diesen Teil einfach mal mit dem Standard-Debugger zu untersuchen.
Liebe Grüsse aus der Eifel,

Georg S. Lorrig
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
Redakteur der Wiki des Deutschprachigen Xbase-Entwickler e.V.

Antworten