Console.WriteLine gibt nichts aus


#1
Hallo,
ich habe das Problem das mir Console.WriteLine nichts ausgibt und ich statt dessen einfach nur ein leeres Fenster sehe. Und die break points sind auch nicht hilfreich, besser geasgt es werden keine Fehler angezeigt.
C++:
Process diskpart = new Process();
diskpart.StartInfo.UseShellExecute = false;
diskpart.StartInfo.RedirectStandardOutput = true;
diskpart.StartInfo.FileName = "diskpart.exe";
diskpart.StartInfo.RedirectStandardInput = true;
diskpart.StartInfo.RedirectStandardError = true;
diskpart.Start();
diskpart.StandardInput.WriteLine("list disk");
string output = diskpart.StandardOutput.ReadToEnd();
Console.WriteLine(output);
diskpart.WaitForExit();
und google war diesbezüglich auch nciht hilfreich
 

cwriter

Erfahrenes Mitglied
#2
Hi

C# ist nicht C/C++. (@sheel: Darf ich bitten?).

Gibt diskpart.Start() denn true zurück? Exceptions gibt es wohl keine, nehme ich an?

(diskpart ist UAC-geschützt. Geht es mit unkritischen Programmen wie sort.exe?)

Gruss
cwriter
 
#3
ups sorry falsches Forum. Und nein es gibt keine Exeptions allerdings weiss ich nicht was du damit meinst ob es true zurück gibt da es ja nen Prozess ist und kein Bool. Auf jedenfall gibt es nicht false zurück.
 
Zuletzt bearbeitet:

cwriter

Erfahrenes Mitglied
#4
was du damit meinst ob es true zurück gibt da es ja nen Prozess ist und kein Bool.
https://msdn.microsoft.com/de-de/library/e8zac0ca(v=vs.110).aspx
Start() gibt sehr wohl einen Bool zurück (allerdings scheint dieser nur anzugeben, ob etwas neues gestartet wurde oder etwas altes wiederverwendet wird, daher vielleicht nicht zielführend).

Eigentlich wäre eine Win32Exception zu erwarten, wenn du nicht genügend Rechte vorweisen kannst.
(siehe auch: https://msdn.microsoft.com/de-de/li...?cs-save-lang=1&cs-lang=csharp#code-snippet-2 )


Gruss
cwriter
 
#7
danke, asynchron war die lösung, hätte ich auch selbst drauf kommen können.

jetzt habe ich das problem das ich an den output nciht ran komme. wenn ich nen breakpoint setze funktioniert alles wunderbar aber ohne bleibt die console leer