Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Fensterinhalt aus Dienstdesktop auslesen (https://www.delphipraxis.net/166789-fensterinhalt-aus-dienstdesktop-auslesen.html)

jaenicke 29. Feb 2012 11:08

Fensterinhalt aus Dienstdesktop auslesen
 
Hallo zusammen,

bei einem Kunden hängt ein Programm, das von einem Dienst (einem Apache Server) aufgerufen wurde. Im Stacktrace des aktiven Threads sehe ich, dass eine MessageBox aktiv ist.

Habe ich eine Möglichkeit deren Inhalt herauszufinden? Tools wie WinSpy++ finden diese Fenster auf dem Desktop des Dienstes nicht.

Es handelt sich um Windows XP. Es braucht keine saubere Lösung zu sein, es geht einfach nur darum herauszufinden was dort schiefgelaufen ist.

Ideen? :-D

Vielen Dank schon einmal,
schöne Grüße,
Sebastian

Bernhard Geyer 29. Feb 2012 11:11

AW: Fensterinhalt aus Dienstdesktop auslesen
 
Wenns XP ist und es keine saubere Lösung sein muss lass doch Zeitweise Dienste-Interaktion mit Deskop zu. Dann wirst du den Dialog auf dem eingeloggten Desktop sehen.

himitsu 29. Feb 2012 11:26

AW: Fensterinhalt aus Dienstdesktop auslesen
 
Falls sowas öfters mal vorkommt.

Theoretisch müßte es auch möglich sein, eine Hook in die Programme zu schleusen, welche MessageBoxen abfängt und dann loggt oder via IPC an ein Programm auf dem aktiven Desktop zu senden. (inkl. Interaktion zur rückwärtigen Steuerung)


Wobei doch eigentlich auch gleich Windows derartige Fenster abfangen sollte, welche auf einem nicht interaktivem Desktop auftauchen. :?

jaenicke 29. Feb 2012 12:25

AW: Fensterinhalt aus Dienstdesktop auslesen
 
Ja, diese Einstellung ist klar, aber das lässt sich nicht reproduzieren und kommt offenbar nur alle paar Wochen vor...
Insofern hätte ich es eigentlich lieber schneller gelöst. (Sprich am noch hängenden Programm und möglichst ohne dass ich beim Kunden einen Disassembler installieren muss. ;-))

Aber wenn dafür niemand eine praktikable Lösung hat, werde ich wohl warten müssen bis es wieder passiert.

SirThornberry 29. Feb 2012 12:30

AW: Fensterinhalt aus Dienstdesktop auslesen
 
du könntest dich per Remotedebugger vielleicht auch zu dem Prozess verbinden und dann siehst du von wo die Messagebox aufgerufen wird und kannst entsprechend durchsteppen etc.

jaenicke 29. Feb 2012 12:40

AW: Fensterinhalt aus Dienstdesktop auslesen
 
Theoretisch ja, aber wir haben keinen Tunnel dorthin. Ich komme daher an den PC nicht direkt heran.

Bernhard Geyer 29. Feb 2012 12:44

AW: Fensterinhalt aus Dienstdesktop auslesen
 
Zitat:

Zitat von himitsu (Beitrag 1153636)
Wobei doch eigentlich auch gleich Windows derartige Fenster abfangen sollte, welche auf einem nicht interaktivem Desktop auftauchen. :?

Macht doch Windows ab Vista/Win7. Aber ich glaube nicht das MS in XP noch sowas einbaut.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:55 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz