Debugger in einer Win32-Anwendung
-
Hallo,
in der Konsolenanwendung kann ich immer mit F10 debuggen und so schrittweise das Programm ausführen, damit ich die/den Fehler finde. Wenn ich nun in einer Win32-Anwendung in einem erstellten Fenster mein Programm programmiere und F10 drücke kann ich das Programm ebenfalls schrittweise abspielen nur kann ich dabei das Fenster nicht aufrufen. Hat jemand eine Idee wie ich das Fenster aufrufen kann? Bin bei jeder Hilfe dankbar.Mit freundlichen Grüßen
Peter
-
Ich glaube, das geht nicht. Aber danke, ich wusste bislang nicht, dass das mit der Konsole möglich ist.
-
Gar nicht, da das Fenster dafür neugezeichnet werden müsste, was bei der typischen Win32-Anwendung im WM_PAINT-Zweig der WindowProc geschehen dürfte. Da die WindowProc ja zu dem Thread gehört, wo du gerade Debuggersteps machst, wird das wohl nicht funktionieren.
-
Schade, dann wird die Fehlersuche halt weiterhin etwas länger dauern. Aber vielen Danke für die schnellen Antworten.
-
Peta schrieb:
Schade, dann wird die Fehlersuche halt weiterhin etwas länger dauern. Aber vielen Danke für die schnellen Antworten.
Das Problem kenne ich.
- Habe ich mir auch schon ein paar mal gedacht, dass ein es praktisch wäre, wenn man auch gerade sehen könnte, was im Fenster abgeht.
Allerdings kannst du ja mal schauen, was wann passiert und dann beim durchgehen dir das Bildlich vorstellen, was passieren sollte und dann mal verglichen, was du vorher gesehen hast.
-
Vereinzelt kann man ja an relevanten Stellen per MessageBox statt Breakpoint debuggen. Das ist zwar umständlicher, und man bekommt nicht so viele Infos (bzw. nur die, die man in die Box packt), aber die Anwendung ist quasi pausiert und man kann das Fenster sehen.
-
Es ist problemlos möglich, auch GUI-Code zu debuggen, wenn das Anwendungsfenster nicht von der IDE verdeckt wird. Dies ist einer der Umstände, die für einen zweiten Monitor sprechen - was natürlich nicht heißen soll, daß es nicht auch mit einem möglich wäre.
Ansonsten ist vereinzelt OutputDebugString noch hilfreich.
-
audacia schrieb:
Ansonsten ist vereinzelt OutputDebugString noch hilfreich.
Vereinzelt?! Die Funktion ist Gold wert. Vor allem bei Geschichten (z.B. timing-abhängige Kommunikation mit seriellen/parallenem Port), bei denen man nicht einfach pausieren kann.
-
Sicherlich, aber hier gehts ja um GUI-Debugging, oder?
-
Auch wieder war...
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Rund um die Programmierung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.