Laden...

Debug Fenster aktiv, wenn anderes Dialogfenster aktiv

Erstellt von AmpelB vor 2 Jahren Letzter Beitrag vor 2 Jahren 249 Views
A
AmpelB Themenstarter:in
41 Beiträge seit 2021
vor 2 Jahren
Debug Fenster aktiv, wenn anderes Dialogfenster aktiv

Hallo,

ich habe mir ein Fenster erstellt, in dem ich eigene spezielle Debug oder Trace Ausgaben ausgebe. Das klappt auch sehr gut. Nur habe ich einen Fall übersehen, in den ich gerade gelaufen bin:
Wenn ich Informationen von einem Fenster erzeuge, was Modal bzw. als Dialog angezeigt wird, erscheinen die Daten wohl in meinem Debug Fenster, aber ich kann das Fenster dann ja nicht aktivieren, um dort z.B. zu scrollen.

Prinzipiell soll das ja auch nicht funktionieren: wenn ich ein Fenster als Dialog anzeige, soll ein anderes Fenster ja auch gesperrt sein. Aber kennt jemand vielleicht einen Trick, wie ich das doch hinbekomme? Die Sachen in einen anderen Thread auszulagern, hilft sicher nicht. Vielleicht müsste es ein ganz anderer Prozess sein, der dann aber nicht auf meine Daten zugreifen kann.

Prinzipiell habe ich eine Lösung, indem ich die Anzeige in einem extra Programm (also eine extra C# Solution) implementiere. Allerdings muss ich dann mit shared Memory (oder eine andere Art von IPC) Arbeiten, damit die Daten in das andere Programm kommt.
Alles in einem Prozess ohne shared Memory ist schon schön und funktioniert auch, solange ich kein Dialog Fenster anzeige.

Gruß
Erwin

2.078 Beiträge seit 2012
vor 2 Jahren

Vielleicht müsste es ein ganz anderer Prozess sein, der dann aber nicht auf meine Daten zugreifen kann

Allerdings muss ich dann mit shared Memory (oder eine andere Art von IPC) Arbeiten

Oder per Web-Request.

Die Sachen in einen anderen Thread auszulagern, hilft sicher nicht

Wird vermutlich in einen Fehler laufen, weil kein UI-Thread.

Und nein, wenn ein Dialog angezeigt wird, kommst Du nicht an dein Debug-Fenster.
Du könntest über die WinApi Mausbewegungen und Scrollen abfangen und tricksen, toll ist das aber nicht.
Oder Du lagerst die Anzeige von einem Fenster in eine Art Service aus, der im Debug-Fall nicht als Dialog anzeigt, sondern als normales Fenster.
Oder Du baust dir eine eigene Alternative, die alle anderen Fenster (außer dein Debug-Fenster) verfolgt und ggf. deaktiviert.

F
10.010 Beiträge seit 2004
vor 2 Jahren

Warum machst du es nicht wie hundert tausende andere Entwickler und benutzt ganz normales Loging?
Gibt genug Logfile viewer die live mitscrollen

A
AmpelB Themenstarter:in
41 Beiträge seit 2021
vor 2 Jahren

War ja nur so ein Gedanke von mir.
Werde es doch wieder so machen, wie bisher mit Standard Mitteln.
Trotzdem danke für die Bemerkungen.