127 votes

Faire correspondre le verrouillage du capuchon au contrôle dans Windows 10

Dans Windows 8, j'avais l'habitude de remapper ma touche capslock pour contrôler en utilisant le registre script.

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

Après être passé à Window 10, cela ne fonctionne plus.

Comment faire ?

0 votes

Notez que cela ne fait que déplacer le verrouillage des majuscules vers une autre touche Ctrl. Je veux les échanger, donc j'ai utilisé les instructions ici pour modifier le script ci-dessus : superuser.com/a/1202601/315584

140voto

Jason Hughes Points 31

Au cas où quelqu'un aurait besoin de le faire via 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);

Exécutez-le en tant qu'administrateur et redémarrez.

3 votes

Apparemment, il suffit de se déconnecter et de se reconnecter.

0 votes

@binarymason il s'est beaucoup amélioré au fil des ans. PowerShell était un langage de script assez pauvre jusqu'à ce qu'ils l'ouvrent et qu'ils sortent PowerShell Core.

0 votes

Quelqu'un peut-il expliquer ces scancodes et comment les manipuler ?

108voto

hugh Points 1076

Tu as pensé à redémarrer ? Cela fonctionne bien pour moi, comme sous Windows 7 et 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

9 votes

Le problème pour moi était que la mise à jour de Windows 10 réinitialiser ma cartographie de verrouillage des majuscules. Mais en le refaisant de la même manière, cela a fonctionné après un autre redémarrage.

50 votes

Si quelqu'un d'autre, comme moi, a besoin de la dernière pièce du puzzle : collez ce qui précède dans un nouveau fichier texte, enregistrez-le avec l'option .reg double-cliquez sur le fichier pour appliquer les modifications au registre, puis redémarrez.

6 votes

Comment le faire correspondre à Caps Lock après ?

69voto

Robert Koritnik Points 575

Il existe désormais une solution directement proposée par Microsoft pour associer le verrouillage des majuscules à la touche de contrôle, appelée PowerToys . PowerToys n'implique pas l'utilisation d'un outil tiers ou la modification du registre à la main (ce qui peut causer de sérieux problèmes si cela est mal fait). L'outil de PowerToys qui gère cela est installé par défaut et s'appelle Gestionnaire de clavier . Cela fonctionne exactement comme prévu - voici une image de la touche Caps Lock mappée à la touche Ctrl.

enter image description here

1 votes

J'ai utilisé la touche "Scancode Map" du registre pendant des années, y compris sous Windows 10, mais un jour, elle a cessé de fonctionner pour Ctrl-X. Le verrouillage des majuscules agissait comme Ctrl la plupart du temps, mais pas lorsqu'il était utilisé avec la touche X. Keyboard Manager semble fonctionner correctement et gère également Ctrl-Alt-backslash, une autre combinaison de touches qui peut vaincre le remappage.

2 votes

...Cependant, le remappage de PowerToys ne fonctionne pas sur le bureau à distance. Vous pouvez remapper sur votre PC local mais la session de bureau à distance ne reçoit pas le remappage. Et l'exécution des mêmes PowerToys sur le PC distant ne fonctionne pas non plus. (Il semble que d'une manière ou d'une autre, les pressions sur les touches Ctrl et Caps Lock sont envoyées à l'ordinateur distant).

2 votes

30voto

moeabdol Points 471

Vous pouvez utiliser SharpKeys pour associer n'importe quelle touche à n'importe quelle autre touche dans Windows 7, 8 ou 10. C'est beaucoup plus facile et plus propre à faire que de modifier le registre vous-même.

J'espère que cela vous aidera.

2 votes

Puis-je l'utiliser pour changer de langue en appuyant sur le verrouillage des majuscules ?

0 votes

Je tiens à préciser que ce programme ne fait que modifier votre registre, et qu'il n'est donc pas nécessaire de le laisser tourner en permanence. Excellent utilitaire !

24voto

mnemotronic Points 361

J'utilise ce qui suit pour envoyer CTRL pour la touche CAPS LOCK, envoyer ALT pour la touche CTRL, et envoyer CAPS LOCK pour la touche ALT. La touche CTRL se trouve à gauche du "A", là où Dieu l'a voulu, la touche ALT se trouve sous la touche SHIFT, et la touche CAPS LOCK, totalement inutile, est bien cachée, là où je dois me casser le poignet pour l'atteindre.

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 "least significant byte, most significant byte" order,
;                    e.g. 0x1234 becomes `34,12`
;   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 (0x003a) 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

6 votes

J'apprécie vraiment les commentaires. Je me suis toujours demandé ce que les codes signifiaient. Très utile.

0 votes

Quelle belle explication ! Connaissez-vous par hasard le code kye de la touche Windows ? J'ai besoin de remapper la CapsLock pour qu'elle agisse comme une touche Windows.

1 votes

@AndreiBoyanov ce serait 0xE05B Ainsi, au lieu de 1d,00,3a,00 vous devez utiliser 5b,e0,3a,00 .

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X