
Эта страница от Microsoft:https://docs.microsoft.com/en-us/windows-hardware/customize/enterprise/keyboardfilter-add-blocked-key-combinationsобъясняет, как создать скрипт PowerShell, который отключит определенные комбинации клавиш.
Вот соответствующие фрагменты кода...
function Enable-Custom-Key($Id) {
<#
.Synopsis
Toggle on a Custom Key keyboard filter Rule
.Description
Use Get-WMIObject to enumerate all WEKF_CustomKey instances,
filter against key value "Id", and set that instance's "Enabled"
property to 1/true.
In the case that the Custom instance does not exist, add a new
instance of WEKF_CustomKey using Set-WMIInstance.
.Example
Enable-Custom-Key "Ctrl+V"
Enable filtering of the Ctrl + V sequence.
#>
$custom = Get-WMIObject -class WEKF_CustomKey @CommonParams |
where {
$_.Id -eq "$Id"
};
if ($custom) {
# Rule exists. Just enable it.
$custom.Enabled = 1;
$custom.Put() | Out-Null;
"Enabled Custom Filter $Id.";
} else {
Set-WMIInstance `
-class WEKF_CustomKey `
-argument @{Id="$Id"} `
@CommonParams | Out-Null
"Added Custom Filter $Id.";
}
}
Enable-Custom-Key "Windows+U"
# etc.
Однако есть ли способ отключить сочетания клавиш, но только для определенного пользователя? (т.е. я хочу, чтобы на том же компьютере был еще один пользователь с правами «администратора», который сможет продолжать использовать сочетания клавиш)
Я думал, что, может быть, если войти в систему как этот пользователь и запустить скрипт, это сработает, но, во-первых, похоже, что это работает только если я запускаю Powershell как администратор, а затем, когда я это делаю, я выхожу из системы и снова вхожу как другой пользователь, «администратор», и здесь комбинации клавиш тоже блокируются.
Это Windows 10 IoT.
(Кстати, я открыт для ответов, которые вообще не используют Powershell. Ранее мне говорили использовать редактор групповой политики, но я не смог найти раздел «Фильтр клавиатуры»)
решение1
Попробуйте DisableKeyboardFilterForAdministrators