Laden...

Zugriff auf ConsoleWindowClass!?

Erstellt von -Hades- vor 16 Jahren Letzter Beitrag vor 16 Jahren 1.529 Views
-
-Hades- Themenstarter:in
171 Beiträge seit 2007
vor 16 Jahren
Zugriff auf ConsoleWindowClass!?

Hi,

ich benutze Windows Vista und würde gerne wissen ob ich mit C# auf ein Fenster, welches von der Klasse ConsoleWindowClass ist und von einem fremden Programm erzeugt wird, zugreifen kann. Das Handle auf das Fenster hab ich (mit dem spy++) wenn das hilft. Ich möchte gerne in das Fenster per Code schreiben (ohne es vorher mit der Maus zu aktivieren oder so) und wenn es geht den Inhalt des Fensters auslesen (auch ohne es zu aktivieren).
Da ich davon keinerlei Ahnung habe bin ich auf eure Hilfe angewiesen, wäre super wenn sich jemand damit auskennt.

MfG -Hades-

4.506 Beiträge seit 2004
vor 16 Jahren

Hallo -Hades-,

das klingt für mich nach Schmuddelkram.

Grundsätzlich kannst Du andere Fenster mittels WinAPI und SendMessage beeinflussen. Was jetzt notwendig ist, damit das Fenster Text übernimmt kann ich Dir nicht auswendig sagen, da heißt es Forschung durch Google 😉

Aber mich würde brennend interessieren, was Du genau vorhast.

Grüße
Norman-Timo

A: “Wie ist denn das Wetter bei euch?”
B: “Caps Lock.”
A: “Hä?”
B: “Na ja, Shift ohne Ende!”

-
-Hades- Themenstarter:in
171 Beiträge seit 2007
vor 16 Jahren

Hi,

also ich muss für meinen Arbeitgeber mit einem externen Programm kommunizieren. Eine Schnittstelle dafür zu schreiben wäre viel zu umständlich und würde den Zeitrahmen sprengen. Ich muss halt nur auf dieses Fenster zugreifen können, Eingaben machen können und wenns geht auch den Inahlt des Fensters auslesen können.
Es handelt sich also definitiv nicht um irgendwelchen Schmuddelkram (was auch immer du dir darunter vorstellst) 🙂

MfG -Hades-

-
-Hades- Themenstarter:in
171 Beiträge seit 2007
vor 16 Jahren

So, zugriff auf das Fenster hab ich jetzt, ich schaffe es das Fenster zu verschieben, die Größe zu ändern und es zu verstecken. Aber dem Fenster eine Eingabe zu übergeben klappt noch nicht. Es gibt zwar die SendMessage Methode in der User32.dll aber ich weiß nicht wie ich sie korrekt einsetze um eine Eingabe zu machen und ob das überhaupt die richtige Methode ist.
Weiß da jemand bescheid?

4.506 Beiträge seit 2004
vor 16 Jahren

Hallo -Hades-,

also wenn es lediglich um den Standard -output/-input geht, dann hilft Dir vielleicht das:

MS - How to spawn console processes with redirected standard handles

Ist zwar englisch (Deutsche Übersetzung ist ja brutal grausig 😉 und C-Code, aber es zeigt sehr gut, wie man mit der WinAPI und dem Standard -input/-output umgeht.

Grüße
Norman-Timo

A: “Wie ist denn das Wetter bei euch?”
B: “Caps Lock.”
A: “Hä?”
B: “Na ja, Shift ohne Ende!”