Às vezes, quando você está tentando enviar teclas modificadoras (win / ctrl / alt) e a sequência de acionamento também possui teclas modificadoras, é necessário aguardar até que as chaves de acionamento sejam liberadas ou elas afetarão a sequência de substituição. estão descobrindo.
Tente usar KeyWait
para fazer isso. Observe que agora estamos usando a sintaxe da tecla de atalho vs hotstring
#LAlt:: ; switch to next desktop with Windows key + Left Alt key
KeyWait LAlt
SendInput #^{Right}
Return
#LCtrl:: ; switch to previous desktop with Windows key + Left CTRL key
KeyWait LCtrl
SendInput #^{Left}
Return
Para fins de troca de desktops, o acima funcionou para mim.
Em outras ocasiões, há momentos em que até essa abordagem não funciona e há outra solução possível. Em vez de esperar chaves como estas ...
KeyWait LAlt
KeyWait LCtrl
... substitua pelo correspondente desses pressionamentos de teclas para limpar o estado da chave:
Send,{LAlt Down}{LAlt Up}
Send,{LCtrl Down}{LCtrl Up}