Share via


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

  1. Asocie una instancia de un componente Process al proceso que desee iniciar. Para obtener más información, vea Cómo: Especificar procesos.

  2. Llame al método Start para iniciar el proceso.

  3. 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

Cómo: Especificar procesos

Cómo: Detener procesos

Conceptos

Introducción a la supervisión y administración de procesos de Windows