如何在Microsoft Natural Ergonomic Keyboard 4000(v1.0)上禁用F Lock键?
我不想在物理上禁用密钥,所以我想进行软件修复。键盘通过USB连接,没有PS / 2连接器。
如何在Microsoft Natural Ergonomic Keyboard 4000(v1.0)上禁用F Lock键?
我不想在物理上禁用密钥,所以我想进行软件修复。键盘通过USB连接,没有PS / 2连接器。
Answers:
Jason Tsang维护Intellitype Pro键盘的注册表编辑器以禁用F锁键。
@JNK的回答将我带到下面的URL,该URL描述了如何通过更改IntelliType Pro的配置来模拟禁用F Lock键。
该页面上的文件特定于IntelliType的较早版本,因此,如果我从IntelliType中丢失了某些其他功能,我会担心使用它们。但是,通过比较那里提供的原始文件和修改后的文件,我能够编写以下PowerShell 2脚本,该脚本将对您碰巧安装的任何IntelliType版本的command.xml文件进行等效更改。
如果您对PowerShell一无所知,那么可能对您毫无用处。如果您确实了解PowerShell,请尽情享受!
#requires -version 2
set-strictmode -version latest
$keyCodes = @(302, 203, 204, 307, 308, 309, 900, 901, 902, 401, 311, 310)
$matchRegex = '^\s*<C({0})\s.*$' -f ($keyCodes -join '|')
# This used to be:
# $filename = "$env:ProgramFiles\Microsoft IntelliType Pro\commands.xml"
$fileName = "$env:ProgramFiles\Microsoft Mouse and Keyboard Center\commands.xml"
$backupFileName = $fileName -replace "\.xml$", ".original.xml"
if (-not (test-path $backupFileName)) {
write-verbose "Backing up commands.xml"
cp $fileName $backupFileName
}
$file = (get-content $fileName) -replace $matchRegex, ""
$xml = [xml]$file
$allAppsStd = $xml.DPGCmd.ALL.Application |
?{ $_.UniqueName -eq "StandardSupport" }
$nextFKey = 1
$keyCodes | %{
$elemName = "C{0}" -f $_
$fkey = "F{0}" -f $nextFKey
$nextFKey++
$new = $xml.CreateElement($elemName)
$new.SetAttribute("Type", "5")
$new.SetAttribute("KeySeq", $fkey)
$allAppsStd.AppendChild($new) | out-null
}
$xml.Save($fileName)
Jason的Intellitype页面上的建议在Windows 7上不起作用。我Function
使用提供的键盘软件将按键的功能(帮助,撤消等)重新映射为实际的按键。点击configure,从命令列表中选择,敲击...弹出窗口时所需的F键,确定。