答案1
应该可以。我已经使用 Powershell 脚本(需要从 Admin PowerShell 控制台运行)进行了各种重新映射。可以轻松添加或减去重新映射对。它已针对您想要的重新映射进行了设置,只需复制和粘贴即可。
##############################################################
$SimplePairs = @(
0x3a, 0x1d # CapsLock > L Ctrl
0x1d, 0x3a # L Ctrl > CapsLock
)
$ExtendedPairs = @(
# 0x5d, 0xe0, 0x1d, 0xe0 # ContextMenu > R Ctrl
)
$ByteCount = 2 * $SimplePairs.Length + $ExtendedPairs.Length + 16
$Remap = New-Object -TypeName byte[] -ArgumentList $ByteCount
$Remap[8] = $SimplePairs.Length/2 + $ExtendedPairs.Length/4 + 1
For ($i = 0 ; $i -lt $SimplePairs.Length ; $i += 2) {
$Remap[$i * 2 + 12] = $SimplePairs[$i]
$Remap[$i * 2 + 14] = $SimplePairs[$i + 1]
}
For ($i = 0 ; $i -lt $ExtendedPairs.Length ; $i += 4) {
$Offset = $SimplePairs.Length * 2
$Remap[$i + 12 + $Offset] = $ExtendedPairs[$i]
$Remap[$i + 13 + $Offset] = $ExtendedPairs[$i + 1]
$Remap[$i + 14 + $Offset] = $ExtendedPairs[$i + 2]
$Remap[$i + 15 + $Offset] = $ExtendedPairs[$i + 3]
}
$args = @{
Path = 'HKLM:\SYSTEM\CurrentControlSet\Control\Keyboard Layout'
Name = 'ScanCode Map'
Value = $Remap
Force = $True
}
New-ItemProperty @args
基思
答案2
如果你想交换 CTRL 和 CAPS,这个自动热键脚本在 Windows 10 上对我有用(交换左控制键和大写键;更改LCtrl
为Ctrl
使两个控制键都变为大写锁定键):
LCtrl::Capslock
Capslock::LCtrl
如果您想添加按下控制键然后按大写锁定键的键盘快捷键,则您的键盘硬件可能会出现问题;您是否尝试过使用其他物理键盘或模拟键盘?