SendKeys.SendWait(String) Metoda

Definicja

Wysyła podane klucze do aktywnej aplikacji, a następnie czeka na przetworzenie komunikatów.

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)

Parametry

keys
String

Ciąg naciśnięć klawiszy do wysłania.

Uwagi

Służy SendWait do wysyłania naciśnięć klawiszy lub kombinacji naciśnięć klawiszy do aktywnej aplikacji i czekać na przetworzenie komunikatów naciśnięć klawiszy. Tej metody można użyć do wysyłania naciśnięć klawiszy do aplikacji i czekać na wszystkie procesy, które są uruchamiane przez naciśnięcia klawiszy do ukończenia. Może to być ważne, jeśli inna aplikacja musi zakończyć się, zanim aplikacja będzie mogła kontynuować.

Note

Ponieważ nie ma metody zarządzanej do aktywowania innej aplikacji, możesz użyć tej klasy w bieżącej aplikacji lub użyć natywnych metod systemu Windows, takich jak FindWindow i SetForegroundWindow, aby wymusić skupienie się na innych aplikacjach.

Note

Klasa SendKeys została zaktualizowana dla programu .NET Framework 3.0 w celu włączenia jego użycia w aplikacjach uruchamianych w systemie Windows Vista. Zwiększone bezpieczeństwo systemu Windows Vista (nazywanego kontrolą konta użytkownika lub kontrola konta użytkownika) uniemożliwia poprzedniej implementacji działanie zgodnie z oczekiwaniami.

Klasa jest podatna SendKeys na problemy z chronometrażem, które niektórzy deweloperzy musieli obejść. Zaktualizowana implementacja jest nadal podatna na problemy z chronometrażem, ale jest nieco szybsza i może wymagać zmian w obejściach. Klasa SendKeys próbuje najpierw użyć poprzedniej implementacji i jeśli zakończy się to niepowodzeniem, użyj nowej implementacji. W związku z tym SendKeys klasa może zachowywać się inaczej w różnych systemach operacyjnych. Ponadto, gdy SendKeys klasa używa nowej implementacji, SendWait metoda nie będzie czekać na przetworzenie komunikatów podczas ich wysyłania do innego procesu.

Jeśli aplikacja opiera się na spójnym zachowaniu niezależnie od systemu operacyjnego, możesz wymusić SendKeys użycie nowej implementacji przez dodanie następującego ustawienia aplikacji do pliku app.config.

<appSettings>

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

</appSettings>

Aby wymusić SendKeys użycie poprzedniej implementacji klasy, użyj wartości "JournalHook" .

Dotyczy