2011-08-10 23 views
15

Necesito ayuda para tratar de ejecutar un ejecutable desde mi aplicación C#.
Supongamos que la ruta es cPath, el EXE es HHTCtrlp.exe y el parámetro que debe pasarse es cParams.Ejecutando EXE con los parámetros

¿Qué debo hacer al respecto?

La razón por la cual la ruta es una variable es que hay 3 archivos EXE diferentes para ejecutar y la ruta cambiará dependiendo de cuál se ejecutará, lo mismo con la cadena de parámetros.

Cualquier ayuda sería muy apreciada.

Respuesta

40

Para iniciar el proceso con los parámetros, puede utilizar el siguiente código:

string filename = Path.Combine(cPath,"HHTCtrlp.exe"); 
var proc = System.Diagnostics.Process.Start(filename, cParams); 

Para matar/salir del programa de nuevo, puede utilizar siguiente código:

proc.CloseMainWindow(); 
proc.Close(); 
+0

@stephen - wow funcionó. Ahora, ¿hay alguna forma de eliminar o salir de ese programa (HHTCtrlp.exe) como si se hubiera hecho clic en el botón de salida? – Privesh

+4

'Process proc = Process.Start (filename, cParams); /*...*/ proc.CloseMainWindow(); proc.Close(); ' –

13
System.Diagnostics.Process.Start("PATH to exe", "Command Line Arguments"); 
4
ProcessStartInfo startInfo = new ProcessStartInfo(string.Concat(cPath, "\\", "HHTCtrlp.exe")); 
startInfo.Arguments =cParams; 
startInfo.UseShellExecute = false; 
System.Diagnostics.Process.Start(startInfo); 
+2

esta es una respuesta de solo código, intente agregar alguna explicación a su respuesta – dotctor