J'ai récemment utilisé la fonction SendKeys en utilisant le script Batch.
J'ai compris comment saisir certaines touches dans une fenêtre, comme la touche de tabulation:
%SendKeys% "{TAB}"
Ou la touche de retour arrière:
%SendKeys% "{BACKSPACE}"
Mais j'ai essayé d'entrer la touche Windows sans appuyer dessus.
Malheureusement, je ne sais pas quel est le nom du lot. J'ai essayé:
WIN
WINDOWS
WINKEY
START
LWIN
Mais aucun n'a fonctionné.
J'ai cherché partout cela et l'aide serait grandement appréciée.
Il n'y a actuellement aucun moyen de simuler le logo home windows dans sendkey's , cependant cela ne signifie pas que ce n'est pas possible.
Si vous regardez les touches de raccourci Windows , vous constaterez que vous pouvez simuler Ouvrir Démarrer avec les combinaisons de touches suivantes: Ctrl + Esc.
Pour simuler cela en batch, vous pouvez utiliser: powershell -c "$wshell = New-Object -ComObject wscript.Shell; $wshell.SendKeys('^{ESCAPE}')
ou dans votre cas: %SendKeys% "^{ESCAPE}"
.
Comme indiqué dans sendkeys:
Vous pouvez créer un programme pour simuler Winkey pressé.
WinKey + R.VB
Imports System.Runtime.InteropServices
Imports System.Windows.Forms
Public Module SendWinKey
Const KEYEVENTF_KEYDOWN As Integer = &H0
Const KEYEVENTF_KEYUP As Integer = &H2
Declare Sub keybd_event Lib "User32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As UInteger, ByVal dwExtraInfo As UInteger)
Public Sub Main()
keybd_event(CByte(Keys.LWin), 0, KEYEVENTF_KEYDOWN, 0) 'press the left Win key down
keybd_event(CByte(Keys.R), 0, KEYEVENTF_KEYDOWN, 0) 'press the R key down
keybd_event(CByte(Keys.R), 0, KEYEVENTF_KEYUP, 0) 'release the R key
keybd_event(CByte(Keys.LWin), 0, KEYEVENTF_KEYUP, 0) 'release the left Win key
End Sub
End Module
Placez-le sur votre bureau.
Ouvrez une invite de commande et tapez
C:\Windows\Microsoft.NET\Framework\v4.0.30319\vbc "%userprofile%\desktop\Win+R.vb" /out:"%userprofile%\Desktop\Win+R.exe" /target:winexe
Un fichier appelé Win + R.exe apparaîtra sur votre bureau. Déplacez-le n'importe où dans le chemin.