Umlaute bei StandardOutput-Stream von Process

Danielku15

Erfahrenes Mitglied
Hallo.

Ich habe ein kleines Problem. Ich führe als Process die net.exe von Microsoft aus. Dann fange ich die Ausgabe mittels StandardOutput ab und will die Meldung in einer MessageBox anzeigen. Jedoch werden mir die Umlaute falsch dargestellt. Bei einem Streamreader könnte ich ja als 2. Übergabewert das Encoding angeben. Aber wie mache ich das bei meinem Process?

C#:
Process proc = new Process();

proc.StartInfo.FileName = Environment.SystemDirectory + @"\net.exe";
proc.StartInfo.CreateNoWindow = true;
proc.StartInfo.RedirectStandardOutput = true;
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.Arguments = "send " + host + " " + message;            

proc.Start();
string output = proc.StandardOutput.ReadToEnd();

Der String output wird dann in einer anderen Methode nach dem Klick eines Buttons in einer MessageBox ausgegeben.

Ich hoffe ihr versteht mein Problem und könnt mir helfen

gruß Daniel
 
Hi,

instanziere doch einen StreamReader mit dem StandardOutput und Encoding und ruf dann erst ReadToEnd() auf.

Oder noch einfacher:
Du setzt in den ProcessStartInfo das Encoding für Input und Output
 
Mensch. Auf die Idee das Encoding in den ProcessStartInfo zu ändern wäre ich nie gekommen. Nur habe ich trotz anderem Encoding das Problem das die Umlaute nicht angezeigt werden. Ich habe alle Encoding-Arten ausprobiert aber keine hat funktioniert. Entweder das ä ist , oder alle Zeichen sind ein Kästchen oder es wird gar nichts mehr angezeigt. Ich finde einfach den Fehler nicht:
C#:
Process proc = new Process();

proc.StartInfo.FileName = Environment.SystemDirectory + @"\net.exe";
proc.StartInfo.CreateNoWindow = true;
proc.StartInfo.RedirectStandardOutput = true;
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.Arguments = "send " + host + " " + message;
proc.StartInfo.StandardOutputEncoding = System.Text.Encoding.Default;

proc.Start();
string output = proc.StandardOutput.ReadToEnd();
proc.WaitForExit();
proc.Close();
 

Neue Beiträge

Zurück