Share via


SendKeys.SendWait(String) 方法

定義

傳送指定的按鍵至使用中的應用程式,然後等待訊息的處理。

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)

參數

keys
String

要傳送的按鍵字串。

備註

使用 SendWait 將按鍵或按鍵組合傳送至使用中應用程式,並等候處理按鍵訊息。 您可以使用這個方法將按鍵傳送至應用程式,並等候按鍵啟動的任何進程完成。 如果其他應用程式必須完成,才能繼續應用程式,這點可能很重要。

注意

因為沒有 Managed 方法來啟用另一個應用程式,所以您可以在目前的應用程式內使用此類別,或使用原生 Windows 方法,例如 FindWindowSetForegroundWindow ,強制將焦點放在其他應用程式。

注意

SendKeys 類別已針對 .NET Framework 3.0 進行更新,以便能夠在 Windows Vista 上執行的應用程式中使用。 Windows Vista 的增強式安全性 (稱為使用者帳戶控制或 UAC) 會讓之前的實作無法如預期般運作。

SendKeys 類別容易受到時間問題的影響,某些開發人員必須解決這些問題。 更新的實作仍然容易受到時間問題的影響,但是速度會稍微快一些,而且可能需要對解決方法進行變更。 SendKeys 類別會先嘗試使用之前的實作;如果失敗,則使用新的實作。 因此, SendKeys 類別在不同的作業系統上可能會有不同的運作方式。 此外,當 SendKeys 類別使用新的實作時, SendWait 方法不會在將訊息傳送至另一個處理序時,等候處理這些訊息。

如果不論作業系統為何,應用程式都需要一致的行為,您可以強制 SendKeys 類別使用新的實作,方式是將下列應用程式設定加入 app.config 檔中。

<appSettings>

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

</appSettings>

若要強制 SendKeys 類別使用之前的實作,請改用 "JournalHook" 值。

適用於