Mapeie o capslock para controlar no windows 10

61

No windows 8 eu usei o remapeamento da minha chave capslock para controlar usando o script de registro

REGEDIT4

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,1d,00,3a,00,00,00,00,00

Depois de ter atualizado para a janela 10, isso não funciona mais. Como isso pode ser feito?

    
por Chiel ten Brinke 02.08.2015 / 14:36

6 respostas

65

Você se lembrou de reiniciar? Parece funcionar bem para mim, assim como nos dias 7 e 8.

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,1d,00,3a,00,00,00,00,00
    
por 02.08.2015 / 21:02
59

Caso alguém precise fazer isso por meio do PowerShell:

$hexified = "00,00,00,00,00,00,00,00,02,00,00,00,1d,00,3a,00,00,00,00,00".Split(',') | % { "0x$_"};

$kbLayout = 'HKLM:\System\CurrentControlSet\Control\Keyboard Layout';

New-ItemProperty -Path $kbLayout -Name "Scancode Map" -PropertyType Binary -Value ([byte[]]$hexified);

Execute como administrador e reinicie.

    
por 07.11.2015 / 19:30
18

Você pode usar SharpKeys para mapear qualquer chave para qualquer outra chave no Windows 7, 8 ou 10. É muito mais fácil e mais limpo do que para modificar o registro você mesmo.

Espero que isso ajude.

    
por 17.01.2016 / 00:05
5

Eu uso o seguinte para enviar CTRL para a tecla CAPS LOCK, enviar ALT para a tecla CTRL e enviar CAPS LOCK para a tecla ALT. CTRL está à esquerda de "A" onde Deus pretendia, ALT está abaixo de SHIFT, e a totalmente inútil tecla CAPS LOCK está seguramente escondida onde eu tenho que quebrar meu pulso para acertar.

Windows Registry Editor Version 5.00

; The hex data is in five groups of four bytes:
;   00,00,00,00,\    header version (always 00000000)
;   00,00,00,00,\    header flags (always 00000000)
;   04,00,00,00,\    # of entries (3 in this case) plus a NULL terminator line.
;                    Entries are in 2-byte pairs: Key code to send & keyboard key to send it.
;                    Each entry is in LSB, MSB order.
;   1d,00,3a,00,\    Send LEFT CTRL (0x001d) code when user presses the CAPS LOCK key (0x003a) 
;   38,00,1d,00,\    Send LEFT ALT (0x0038) code when user presses the LEFT CTRL key (0x001d) 
;   3a,00,38,00,\    Send CAPS LOCK (0x3A) code when user presses the LEFT ALT key (0x0038) 
;   00,00,00,00      NULL terminator

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout]
"Scancode Map"=hex:00,00,00,00,\
                   00,00,00,00,\
                   04,00,00,00,\
                   1d,00,3a,00,\
                   38,00,1d,00,\
                   3a,00,38,00,\
                   00,00,00,00
    
por 01.11.2017 / 00:40
1

Você pode usar lswitch para remapear a entrada de idioma para o CapsLock.

Use any key to switch input languages, usage: lswitch [keycode]. Keycode is optional and defaults to context menu key. Another good candidate is a CapsLock key with a keycode of 20.

lswitch 20

Adicione-o ao carregamento automático.

    
por 17.06.2017 / 02:49
0

Eu costumava usar o AutoHotKey para fazer isso.

Eu teria um link no diretório de inicialização para executar um script ahk muito básico:

Capslock::Ctrl

O problema é que o Autohotkey não é executado como Administrador, portanto, não afetará as janelas privilegiadas, a menos que você use o agendador de tarefas em vez do diretório de inicialização para executar o script no login com privilégios mais altos. O segundo problema é que, às vezes, o script trava ao retomar a suspensão, portanto, talvez seja necessário recarregá-lo, o que é irritante.

O AutoHotKey é mais adequado para tarefas mais complexas, como escrever macros.

    
por 11.08.2018 / 19:59