Compartilhar via


SendKeys.SendWait(String) Método

Definição

Envia chaves especificadas para o aplicativo ativo e aguarda até que as mensagens sejam processadas.

public:
 static void SendWait(System::String ^ keys);
public static void SendWait (string keys);
static member SendWait : string -> unit
Public Shared Sub SendWait (keys As String)

Parâmetros

keys
String

A cadeia de caracteres de pressionamentos de teclas a ser enviada.

Comentários

Use SendWait para enviar pressionamentos de teclas ou combinações de pressionamentos de tecla para o aplicativo ativo e aguardar o processamento das mensagens de pressionamento de tecla. Você pode usar esse método para enviar pressionamentos de tecla para um aplicativo e aguardar que todos os processos iniciados pelos pressionamentos de tecla sejam concluídos. Isso pode ser importante se o outro aplicativo precisar ser concluído antes que seu aplicativo possa continuar.

Observação

Como não há nenhum método gerenciado para ativar outro aplicativo, você pode usar essa classe dentro do aplicativo atual ou usar métodos nativos do Windows, como FindWindow e SetForegroundWindow, para forçar o foco em outros aplicativos.

Observação

A SendKeys classe foi atualizada para o .NET Framework 3.0 para habilitar seu uso em aplicativos executados no Windows Vista. A segurança avançada do Windows Vista (conhecida como Controle de Conta de Usuário ou UAC) impede que a implementação anterior funcione conforme o esperado.

A SendKeys classe é suscetível a problemas de tempo, que alguns desenvolvedores tiveram que resolver. A implementação atualizada ainda está suscetível a problemas de atraso, mas é ligeiramente mais rápida e pode exigir alterações para as soluções alternativas. A SendKeys classe tenta usar a implementação anterior primeiro e, se isso falhar, usa a nova implementação. Como resultado, a SendKeys classe pode se comportar de forma diferente em diferentes sistemas operacionais. Além disso, quando a SendKeys classe usa a nova implementação, o método não aguardará que as SendWait mensagens sejam processadas quando forem enviadas para outro processo.

Se o aplicativo depender de um comportamento consistente, independentemente do sistema operacional, você poderá forçar a SendKeys classe a usar a nova implementação adicionando a seguinte configuração de aplicativo ao arquivo app.config.

<appSettings>

<add key="SendKeys" value="SendInput"/>

</appSettings>

Para forçar a SendKeys classe a usar a implementação anterior, use o valor "JournalHook" em vez disso.

Aplica-se a