Tu peux en effet utiliser PowerShell pour simuler un touche clavier. Tu dois pour cela identifier l'application à laquelle sera envoyée la commande et ensuite lui passer la commande SendWait().
Pré-requis : activer l'exécution des scripts PowerShell sur Windows 10.
Dans cet exemple le script PowerShell effectue les opération suivantes :
- Détermine le temps durant lequel le script fonctionnera (720 secondes).
- Détermine le nom du processus vers lequel sera envoyée la commande (Le Bloc-notes).
- Envoie la commande SendWait(), ici on simule la touche M.
- Détermine l'intervalle d'envoi de la commande (10 secondes).
test.ps1
$timeout = new-timespan -Minutes 720
$sw = [diagnostics.stopwatch]::StartNew()
while ($sw.elapsed -lt $timeout){
[void] [System.Reflection.Assembly]::LoadWithPartialName("'Microsoft.VisualBasic")
[Microsoft.VisualBasic.Interaction]::AppActivate("Bloc-notes")
[void] [System.Reflection.Assembly]::LoadWithPartialName("'System.Windows.Forms")
[System.Windows.Forms.SendKeys]::SendWait("M")
start-sleep -seconds 10
}
write-host "1FORMATIK.com SendWait"
Copiez le script, collez le dans un fichier txt, changez l'extension du fichier de txt vers ps1, lancez le Bloc-notes et exécutez le fichier PowerShell pour simuler la touche clavier.