Teilen über


SendKeys.SendWait(String) Methode

Definition

Sendet die angegebenen Tasten an die aktive Anwendung und wartet anschließend die Verarbeitung der Meldungen ab.

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)

Parameter

keys
String

Die zu sendende Zeichenfolge der Tastatureingaben.

Hinweise

Verwenden Sie SendWait , um Tastaturanschläge oder Kombinationen von Tastaturanschlägen an die aktive Anwendung zu senden und auf die Verarbeitung der Tastatureingabemeldungen zu warten. Sie können diese Methode verwenden, um Tastatureingaben an eine Anwendung zu senden und darauf zu warten, dass prozesse, die von den Tastenanschlägen gestartet werden, abgeschlossen sind. Dies kann wichtig sein, wenn die andere Anwendung abgeschlossen werden muss, bevor Ihre Anwendung fortgesetzt werden kann.

Hinweis

Da es keine verwaltete Methode zum Aktivieren einer anderen Anwendung gibt, können Sie diese Klasse entweder innerhalb der aktuellen Anwendung verwenden oder native Windows-Methoden wie FindWindow und SetForegroundWindowverwenden, um den Fokus auf andere Anwendungen zu erzwingen.

Hinweis

Die SendKeys -Klasse wurde für .NET Framework 3.0 aktualisiert, damit sie in Anwendungen verwendet werden kann, die unter Windows Vista ausgeführt werden. Die verbesserte Sicherheit von Windows Vista (Stichwort Benutzerkontensteuerung) verhindert, dass die vorherige Implementierung ordnungsgemäß funktioniert.

Die SendKeys -Klasse ist anfällig für Probleme hinsichtlich der zeitlichen Steuerung, sodass einige Entwickler gezwungen waren, Umgehungslösungen zu finden. Die aktualisierte Implementierung ist immer noch anfällig für Probleme hinsichtlich der zeitlichen Steuerung, ist jedoch etwas schneller und erfordert möglicherweise Änderungen an den Umgehungslösungen. Die SendKeys -Klasse versucht zunächst, die vorherige Implementierung zu verwenden. Schlägt dies fehl, wird die neue Implementierung verwendet. Infolgedessen verhält sich die SendKeys -Klasse unter verschiedenen Betriebssystemen möglicherweise unterschiedlich. Verwendet die SendKeys -Klasse die neue Implementierung, wartet die SendWait -Methode nicht auf zu verarbeitende Nachrichten, wenn diese an einen anderen Prozess gesendet werden.

Ist für Ihre Anwendung ein einheitliches, vom Betriebssystem unabhängiges Verhalten erforderlich, können Sie für die SendKeys -Klasse das Verwenden der neuen Implementierung erzwingen, indem Sie die folgende Anwendungseinstellung in Ihre "app.config"-Datei einfügen.

<appSettings>

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

</appSettings>

Soll die SendKeys -Klasse gezwungen werden, die vorherige Implementierung zu verwenden, geben Sie stattdessen den Wert "JournalHook" an.

Gilt für: