SoloCodigo
		CLR: .Net / Mono / Boo / Otros CLR => C# => Mensaje iniciado por: yomariano en Viernes 17 de Junio de 2011, 18:32
		
			
			- 
				Les cuento, yo estoy haciendo un codigo para poder ejecutar un .exe desde c#. Resulta que yo le paso los parametros al metodo StartInfo.Arguments de la siguiente manera:
private static void EjecutarProceso()
{
                System.Diagnostics.Process p = new System.Diagnostics.Process();
                p.StartInfo.FileName = "C:\Users\user\Desktop\programa\programa";
                p.StartInfo.UseShellExecute = false;
                p.StartInfo.Arguments = @"--host=host --port=port --user=user@mail.com  --pass=pass";
                p.StartInfo.RedirectStandardInput = true;
                p.StartInfo.RedirectStandardOutput = true;
                p.StartInfo.RedirectStandardError = true;
                p.StartInfo.CreateNoWindow = false;
                try
            {
                   System.Console.WriteLine("Inicializando...");
                p.Start();
                   System.Console.WriteLine("Proceso iniciado.");
                                System.Console.WriteLine(p.StandardOutput.ReadToEnd());
                System.Console.WriteLine(p.StandardError.ReadToEnd());
          
            }
             catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }
   
}
Compila todo muy bien, pero no ejecuta el programa. Pero si le saco la parte de argeuments, el programa ejecuta y me pide los parametros. Busque por todos lados y me volvi loco, no encuentro la solucion a esto ya. 
Alguien tiene idea?
Saludos y gracias!
			 
			
			- 
				puede que te falte el .exe?
p.StartInfo.FileName = "C:\Users\user\Desktop\programa\programa.exe";
si no es eso luego lo miro que no recuerdo muy bien como iba. Saludos
			 
			
			- 
				No es eso.. en el administrador de tareas de windows, el programa ese me ejecuta y aparece ahi. El tema es que por algun motivo no esta leyendo los parametros que le envio.
Saludos.
			 
			
			- 
				Ya probe esto:
p.Start(@"C:UsersuserDesktopprogramaprograma. exe","--host=host --port=port --user=user@mail.com --pass=pass");
y me tira este error:
No se puede obtener acceso al miembro 'System.Diagnostics.Process.Start(string, string)' con una referencia de instancia; certifíquelo con un nombre de tipo en su lugar (CS0176) -