Cómo: Esperar a que los procesos finalicen acciones
Actualización: noviembre 2007
Se dice que un proceso está inactivo cuando su ventana principal está a la espera de una entrada por parte del sistema. Para comprobar el estado de inactividad de un proceso, primero deberá enlazar un componente Process a dicho proceso. Puede llamar al método WaitForInputIdle antes de hacer que el proceso de destino ejecute una acción.
El método WaitForInputIdle indica a un componente Process que espere a que el proceso asociado entre en estado de inactividad. Este método es útil, por ejemplo, cuando la aplicación espera a que un proceso termine de crear la ventana principal antes de comunicarse con ella. El método WaitForInputIdle sólo funciona con procesos que tengan una interfaz de usuario.
Para esperar a que un proceso complete una acción
Asocie una instancia de un componente Process al proceso que desee iniciar. Para obtener más información, vea Cómo: Especificar procesos.
Llame al método Start para iniciar el proceso.
Llame al método WaitForInputIdle adecuado:
WaitForInputIdle: indica al componente Process que espere indefinidamente a que el proceso asociado entre en estado de inactividad.
WaitForInputIdle: indica al componente Process que espere el número especificado de milisegundos a que un proceso asociado entre en estado de inactividad.
En el ejemplo siguiente se muestra cómo se llama al método WaitForInputIdle para esperar a que termine de cargarse Notepad antes de asignar la propiedad de módulos a una matriz vacía.
Dim myProcess As New Process() myProcess = Process.Start("Notepad.exe") myProcess.WaitForInputIdle()
Process myProcess; myProcess = Process.Start("Notepad"); myProcess.WaitForInputIdle();
Vea también
Tareas
Cómo: Enlazar con procesos existentes
Conceptos
Introducción a la supervisión y administración de procesos de Windows