2010-04-25 13 views

risposta

12

Le altre risposte sono corrette. Ecco un codice che è possibile utilizzare:

ProcessStartInfo startInfo = new ProcessStartInfo(cmd, args); 
startInfo.UseShellExecute = false; 
startInfo.RedirectStandardError = true; 
Process someProcess = Process.Start(startInfo); 
string errors = someProcess.StandardError.ReadToEnd(); 

Si noti che se il file non viene trovato non si otterrà un errore su errore standard. Avrai invece un'eccezione.

+0

Si noti che la chiamata a ReadToEnd potrebbe non terminare mai. Per evitare il deadlock, utilizzare invece i metodi di lettura asincrona. Vedi la mia risposta qui: http://stackoverflow.com/questions/139593/processstartinfo-hanging-on-waitforexit-why/7608823#7608823 –

+0

Seguo le tue ans. e ha ottenuto questo errore negli errori (stringa var.) 'casperjs' non viene riconosciuto come comando interno o esterno, \ r \ noperatore o file batch. \ r \ n Plz fornisce una soluzione se esiste –

Problemi correlati