Process und Plink (Putty)

25/12/2008 - 18:32 von Thomas Hübner | Report spam
Hi NG,

ich versuche mit plink (Putty) eine SSH Verbindung auf einen Linux
Server zu etablieren. Ich nutze das Standard MSDN Beispiel:

Dim myProcess As New Process()
Dim myProcessStartInfo As New
ProcessStartInfo("Process_StandardOutput_Sample.exe")
myProcessStartInfo.UseShellExecute = False
myProcessStartInfo.RedirectStandardOutput = True
myProcess.StartInfo = myProcessStartInfo
myProcess.Start()

Dim myStreamReader As StreamReader = myProcess.StandardOutput
' Read the standard output of the spawned process.
Dim myString As String = myStreamReader.ReadLine()
Console.WriteLine(myString)
myProcess.Close()

... mit dem Unterschied das ich als Ausgabe .ReadToEnd in eine
Messagebox ausgeben lasse.

Folgendes Verhalten zeigt sich:

- plink.exe ohne Parameter gestartet bringt mir die Hilfe von plink an
der Standardausgabe -> gut
- plink.exe mit Parmeter gestartet bringt mir eine leere Standardausgabe

Jetzt werdet Ihr sagen - Parametersyntax falsch :-) -> Dachte ich auch

- myProcessStartInfo.RedirectStandardOutput = True <- auf False gesetzt
und plink mit Parameter gestartet. Ein Konsolenfenster öffnet sich und
die SSH Verbindung wird aufgebaut und mein als Parameter übergebener
Befehl (symbolisch "ls -l") wird ausgeführt.

Ich kriege "ums verrecken" die Standardausgabe nicht in einen
Streamreader bzw. als Endresultat in einen String.

Was mache ich verkehrt (NET2.0) Ist es Evtl. ein Zeichensatz/ Codepage
Problem?

Frohe Weihnachten und Gruß,
Thomas
 

Lesen sie die antworten

#1 Thomas Hübner
25/12/2008 - 18:47 | Warnen spam
Zusatzinfo - der Process wird in beiden fàllen nach Ausführung "excited"
- müßte der nicht weiterlaufen bis ich "Process.Close()" sage?

Ähnliche fragen