Share via


SendKeys.SendWait(String) Méthode

Définition

Envoie les touches données à l'application active, puis attend que les messages soient traités.

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)

Paramètres

keys
String

Chaîne de séquences de touches à envoyer.

Remarques

Permet SendWait d’envoyer des séquences de touches ou des combinaisons de frappes à l’application active et d’attendre que les messages de frappe soient traités. Vous pouvez utiliser cette méthode pour envoyer des séquences de touches à une application et attendre que les processus démarrés par les séquences de touches soient terminés. Cela peut être important si l’autre application doit se terminer avant que votre application puisse continuer.

Notes

Étant donné qu’il n’existe aucune méthode managée pour activer une autre application, vous pouvez utiliser cette classe dans l’application actuelle ou utiliser des méthodes de Windows natives, telles que FindWindow et SetForegroundWindow, pour forcer le focus sur d’autres applications.

Notes

La classe SendKeys a été mise à jour pour .NET Framework 3.0 pour pouvoir être utilisée dans les applications qui s'exécutent sur Windows Vista. La sécurité renforcée de Windows Vista (également appelée Contrôle de compte d'utilisateur) empêche le fonctionnement correcte de l'implémentation précédente.

La classe SendKeys est vulnérable aux problèmes de synchronisation, que certains développeurs ont dû contourner. L'implémentation mise à jour est toujours vulnérable aux problèmes de synchronisation, mais est légèrement plus rapide et peut nécessiter certaines modifications des solutions de contournement. La classe SendKeys tente d'abord d'utiliser l'implémentation précédente et, en cas d'échec, utilise la nouvelle implémentation. Ainsi, la classe SendKeys peut se comporter différemment sur différents systèmes d'exploitation. En outre, quand la classe SendKeys utilise la nouvelle implémentation, la méthode SendWait n'attend pas que les messages soient traités quand ils sont envoyés à un autre processus.

Si votre application repose sur un comportement cohérent indépendamment du système d'exploitation, vous pouvez forcer la classe SendKeys à utiliser la nouvelle implémentation en ajoutant le paramètre d'application suivant à votre fichier app.config.

<appSettings>

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

</appSettings>

Pour forcer la classe SendKeys à utiliser l'implémentation précédente, utilisez plutôt la valeur "JournalHook" .

S’applique à