WEKF_CustomKey
支援的版本
✅IoT 企業版 LTSC
✅ IoT 企業✅
版 LTSC
✅ 企業
✅教育版
加入或移除自定義定義的按鍵組合。
語法
class WEKF_CustomKey {
[Static] uint32 Add(
[In] string CustomKey
);
[Static] uint32 Remove(
[In] string CustomKey
);
[Key] string Id;
[Read, Write] boolean Enabled;
};
成員
下表列出屬於這個類別的任何方法和屬性。
方法
方法 | 描述 |
---|---|
WEKF_CustomKey.Add | 建立新的自定義按鍵組合,並啟用鍵盤篩選來封鎖新的按鍵組合。 |
WEKF_CustomKey.Remove | 拿掉指定的自定義按鍵組合。 鍵盤篩選器會停止封鎖已移除的按鍵組合。 |
屬性
屬性 | 資料類型 | 限定 符 | 描述 |
---|---|---|---|
標識碼 | string | [key] | 自定義按鍵組合的名稱。 |
啟用 | 布林值 | [讀取、寫入] | 指出金鑰是否遭到封鎖或解除封鎖。 這個屬性可以是下列其中一個值 - true 表示已封鎖索引鍵。 - 假 表示未封鎖金鑰。 |
備註
您可以藉由在名稱中包含輔助按鍵來指定按鍵組合。 最常見的修飾詞名稱是 >Ctrl、 >Shift、 >Alt 和 >Win。 您無法封鎖非輔助按鍵的組合。 例如,您可以封鎖 Ctrl +>Shift+>F 的>按鍵組合,但無法封鎖 A>+>D 的按鍵組合。
當您封鎖 >Shift 修改的金鑰時,必須將金鑰輸入為 >Shift + 未修改的金鑰。 例如,若要封鎖>英文鍵盤配置上的 % 鍵,您必須將按鍵指定為 >Shift+>5。 嘗試封鎖 >%,會導致鍵盤篩選器封鎖 >5 。
當您指定要封鎖的按鍵組合時,必須使用密鑰的英文名稱。 如需您可以指定的金鑰名稱清單,請參閱鍵盤篩選按鍵名稱。
範例
下列程式代碼示範如何使用鍵盤篩選的 Windows Management Instrumentation (WMI) 提供者,新增或啟用鍵盤篩選器將封鎖的自定義按鍵組合。 此範例會直接修改屬性,且不會呼叫 WEKF_CustomKey中定義的任何方法。
<#
.Synopsis
This script shows how to use the WMI provider to enable and add
Keyboard Filter rules through Windows PowerShell on the local computer.
.Parameter ComputerName
Optional parameter to specify a remote machine that this script should
manage. If not specified, the script will execute all WMI operations
locally.
#>
param (
[String] $ComputerName
)
$CommonParams = @{"namespace"="root\standardcimv2\embedded"}
$CommonParams += $PSBoundParameters
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.";
}
}
# Some example uses of the function defined above.
Enable-Custom-Key "Ctrl+V"
Enable-Custom-Key "Numpad0"
Enable-Custom-Key "Shift+Numpad1"