| 

.NET C# Java Javascript Exception

4
Ich möchte die Eingabeaufforderung (cmd.exe) innerhalb eines Windows-Formulars unter .NET einbinden. Dies funktioniert, so zeigen es Beispiele im Internet, durch eine neue Zuordnung des Windows-Handles über die API-Funktionen SetParent und ShowWindow. Die Eingabeaufforderung wird zunächst über ein eigenständiges Fenster gestartet, dann mit SetParent auf das Fenster-Handle eines benutzerdefinierten Steuerelementes umgeleitet und anschließend via ShowWindow im neuen Handle-Fensterberreich mit ShowWindow angezeigt. So weit so gut. Verschiebe ich das Fenster jedoch, werden Teile des eingebetteten Fensterinhaltes mitunter gelöscht oder verschwinden ganz. Wie kann ich das Neuzeichnen erzwingen? Meine Versuche auf Ereignisse zur Formularumpositionierung zu reagieren, haben bislang keinen Erfolg.
07.09.2011
Simone B. 71 2
1 Antwort
0
Hallo Simone,

vielleicht klappts auch ohne unmanaged APIs:

Starte mit Process.Start("cmd.exe") eine CommandLine, leite alle Streams um (ProcessStartInfo RedirectXYZ), und mach Dir ein eigenes Control, das aussieht wie eine CommandLine. Eingaben in Dein Control leitest Du in den Process.StandardInput, usw...

Viel Erfolg
Florian
07.09.2011
ffordermaier 8,4k 3 9

Stelle deine .net-Frage jetzt!