Problema con proceso

22/02/2007 - 20:31 por AiTdX100MIl | Informe spam
He creado una aplicación que en un momento dado necesita echar mano de un
programa externo para lo cual creo un proceso de la siguiente forma:

Process proPri = new Process();
proPri.Exited += new EventHandler(ProPri_Exited);
proPri.StartInfo.CreateNoWindow = true;
proPri.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
proPri.StartInfo.FileName = ejecutable;
proPri.StartInfo.Arguments = argumentos;
proPri.EnableRaisingEvents = true;
proPri.Start();

Como puede asociarse la salida de este proceso está asociada a la ejecución
de un método ProPri_Exited. En este método necesito realizar unas
operaciones. Sin embargo, el Thread principal que creo este proceso siguió su
camino y ha cerrado conexiones que necesitaba. ¿Cómo puede detener el thread
principal hasta que mi proceso termine?¿Existe un wait o instrucción
semejante para esperar a que el proceso que he creado termine de ejecutar el
método asociado a su salida? Gracias
Aitdx

Preguntas similare

Leer las respuestas

#1 Alberto Poblacion
22/02/2007 - 20:51 | Informe spam
"AiTdX100MIl" wrote in message
news:
Process proPri = new Process();
[...] ¿Cómo puede detener el thread
principal hasta que mi proceso termine?¿Existe un wait o instrucción
semejante para esperar a que el proceso que he creado termine de ejecutar
el
método asociado a su salida?



Basta con que hagas proPri.WaitForExit();
Respuesta Responder a este mensaje
#2 AiTdX100MIl
23/02/2007 - 09:26 | Informe spam
¿Pero de este modo no detendré el proceso en lugar del thread principal que
es que deseo que espere? proPri no es el thread principal sino el proceso por
el que tengo que esperar
Aitdx


"Alberto Poblacion" wrote:

"AiTdX100MIl" wrote in message
news:
> Process proPri = new Process();
> [...] ¿Cómo puede detener el thread
> principal hasta que mi proceso termine?¿Existe un wait o instrucción
> semejante para esperar a que el proceso que he creado termine de ejecutar
> el
> método asociado a su salida?

Basta con que hagas proPri.WaitForExit();



Respuesta Responder a este mensaje
#3 Alberto Poblacion
23/02/2007 - 12:44 | Informe spam
"AiTdX100MIl" wrote in message
news:
¿Pero de este modo no detendré el proceso en lugar del thread principal
que
es que deseo que espere? proPri no es el thread principal sino el proceso
por
el que tengo que esperar



No, con proPri.WaitForExit() no detienes el proceso de proPri, lo que
detienes es en thread que está ejecutando la instrucción
proPri.WaitForExit() hasta que termina el proceso lanzado a través de
proPri.
Respuesta Responder a este mensaje
#4 AiTdX100MIl
23/02/2007 - 14:39 | Informe spam
Así es. Muchas gracias por tu ayuda creo que he solucionado mi problema
Aitdx


"Alberto Poblacion" wrote:

"AiTdX100MIl" wrote in message
news:
> ¿Pero de este modo no detendré el proceso en lugar del thread principal
> que
> es que deseo que espere? proPri no es el thread principal sino el proceso
> por
> el que tengo que esperar

No, con proPri.WaitForExit() no detienes el proceso de proPri, lo que
detienes es en thread que está ejecutando la instrucción
proPri.WaitForExit() hasta que termina el proceso lanzado a través de
proPri.



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida