2010-04-25 32 views

Respuesta

12

Las demás respuestas son correctas. Aquí hay un código que podría utilizar:

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

Tenga en cuenta que si no se encuentra el archivo que no se producirá un error en el error estándar. Obtendrá una excepción en su lugar.

+0

Tenga en cuenta que la llamada a ReadToEnd podría nunca terminar. Para evitar un interbloqueo, utilice los métodos de lectura asíncrona. Ver mi respuesta aquí: http://stackoverflow.com/questions/139593/processstartinfo-hanging-on-waitforexit-why/7608823#7608823 –

+0

Sigo tus ans. y obtuve este error en los errores (var. de cadena) 'casperjs' no se reconoce como un comando interno o externo, \ r \ nprogramable o archivo por lotes. \ r \ n Proporcione cualquier solución si existe –

Cuestiones relacionadas