Partilhar via


Função AppActivate

Ativa um aplicativo que já está sendo executado.

Public Overloads Sub AppActivate( _
      ByVal { Title As String | ProcessId As Integer } _
)

Parâmetros

  • Title
    Expressão String especificando o título no barra de título do aplicativo que você deseja ativar.Você pode usar o título atribuído ao aplicativo quando ele foi iniciado.

  • ProcessId
    Integer especificando o número de identificação de processo Win32 atribuído a esse processo.Você pode usar o número de identificação retornado por Função Shell, desde que ele não seja zero.

Exceções

Tipo de exceção

Número de erro

Condição

ArgumentException

5

Title ou ProcessId não podem ser encontrados.

Ver a coluna " número de erro " se você estiver atualizando aplicativos Visual Basic 6.0 que usam manipulação de erros não estruturada.(Você pode comparar o número do erro com a Propriedade do Número (Erro de objeto).) Entretanto, quando for possivel, você pode considerar substituir tal controle de erro por Visão Geral sobre a Manipulação Estruturada de Exceções para o Visual Basic.

Comentários

Você usa AppActivate para colocar a janela ativa de um aplicativo em foco.Você pode não ter um identificador ou uma referência à janela ativa, ou mesmo saber qual janela está ativa em um determinado momento.Em tais casos, você não pode usar o método Focus.

A função AppActivate altera o foco para o aplicativo ou janela nomeado, mas não afeta se ele está maximizado ou minimizado.O foco sai da janela ativada do aplicativo quando o usuário executa alguma ação para alterar o foco ou fecha a janela.Você pode usar a função Shell para iniciar um aplicativo e definir o estilo da janela.

Se você usar o parâmetro Title,AppActivate usa uma comparação que não diferencia maiúsculas de minúsculas mas em compensação requer uma correspondência exata com o conteúdo da barra de título.Primeiro ele procura nas janelas de nível superior e, em seguida, nas janelas filho.Se ele não puder localizar uma correspondência, ele lança uma ArgumentException.

Você pode usar AppActivate somente com os processos que possuem janelas.A maioria dos aplicativos de console não possui janelas, o que significa que eles não aparecem na lista de processos que AppActivate procura.Ao executar a partir de um aplicativo de console, o sistema cria um processo separado para executar o aplicativo e retorna a saída para o processo de console.Consequentemente, ao solicitar a identificação do processo atual, você obtém a identificação de processo desse processo separado, em vez da identificação de processo do aplicativo de console.

Em tempo de execução, a função AppActivate ativa qualquer aplicativo em execução com um título que corresponda a Title ou com um número de identificação de processo que corresponda a ProcessId.Se não houver nenhuma correspondência exata, ele ativa quaisquer aplicativos cuja sequência de caracteres de título termina com Title.Se houver mais de um aplicativo chamado Title, a função AppActivate arbitrariamente escolhe um para ativar.

Observação:

O AppActivate função requer UIPermission com o SafeTopLevelWindows nível, que pode afetar sua execução em situações de confiança parcial.Para obter mais informações, consulte Solicitando permissões e Classe UIPermission.

Exemplo

Este exemplo ilustra vários usos da função AppActivate para ativar uma janela de aplicativo.Se um processo do Bloco de Notas não estiver sendo executado, o exemplo gera uma ArgumentException.O procedimento Shell considera que os aplicativos estão nos caminhos especificados.

Dim notepadID As Integer
' Activate a running Notepad process.
AppActivate("Untitled - Notepad") 
' AppActivate can also use the return value of the Shell function.
' Shell runs a new instance of Notepad.
notepadID = Shell("C:\WINNT\NOTEPAD.EXE", AppWinStyle.NormalFocus)
' Activate the new instance of Notepad.  
AppActivate(notepadID)

Anotações Developer Dispositivo Inteligente

Não há suporte para esta função.

Requisitos

Namespace: Microsoft.VisualBasic

**Módulo:**Interaction

Assembly: Visual Basic Runtime Library (em Microsoft.VisualBasic.dll)

Consulte também

Referência

Função Shell

Focus

ArgumentException