Compartilhar via


Como: Determinar se um processo está respondendo

Você pode usar o Responding propriedade para determinar se a interface do usuário de um processo está respondendo. Quando você tenta ler o Responding propriedade, uma solicitação é enviada para a interface do usuário do processo de destino. Se houver uma resposta imediata, o valor da propriedade retorno é true; um false o valor da propriedade será retornado se não houver resposta da interface. Esta propriedade é útil se você precisar forçar um aplicativo congelado para fechar.

Para determinar se um processo está respondendo

  1. Se o processo não foi iniciado com um componente, associar um Process componente para o processo de destino. Para obter mais informações, consulte Como: BIND a processos existentes.

  2. Leia o Responding propriedade.

  3. Determine um curso de ação a ser tomada dependendo do valor da propriedade.

    O exemplo a seguir mostra como determinar se o bloco de notas está respondendo.Se o Responding propriedade é true, ligue para o CloseMainWindow método para fechar o aplicativo. Se o Responding propriedade é false , o M:System.Diagnostics.Process.Kill método é chamado para forçar o processo para fechar.

    Dim myProcesses() As Process
    myProcesses = Process.GetProcessesByName("Notepad.exe")
    ' Tests the Responding property for a True return value.
    If myProcesses(0).Responding Then
        myProcesses(0).CloseMainWindow()
    Else
        ' Forces the process to close if the Responding value is False.
        myProcesses(0).Kill()
    End If
    
         Process[] notepads;
            notepads = Process.GetProcessesByName("Notepad.exe");
            // Test to see if the process is responding.
            if (notepads[0].Responding)
            {
                notepads[0].CloseMainWindow();
            }
            else
            {
                notepads[0].Kill();
            }
    

Consulte também

Tarefas

Como: Especificar processos

Como: Interromper processos

Como: BIND a processos existentes

Outros recursos

Recuperando informações sobre processos

Gerenciando processos