共用方式為


WEKF_CustomKey

新增或移除自定義定義的按鍵組合。

語法

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 拿掉指定的自定義按鍵組合。 鍵盤篩選會停止封鎖已移除的按鍵組合。

屬性

屬性 資料類型 限定詞 描述
Id 字串 [key] 自定義按鍵組合的名稱。
已啟用 布林值 [read, write] 指出金鑰是否已遭到封鎖或解除封鎖。 此屬性可以是下列其中一個值
- true 表示已封鎖索引鍵。
- false 表示金鑰未遭到封鎖。

備註

您可以藉由在名稱中包含修飾詞索引鍵來指定按鍵組合。 最常見的修飾詞名稱是 「Ctrl」、“Shift”、“Alt” 和 “Win”。 您無法封鎖非修飾詞索引鍵的組合。 例如,您可以封鎖 「Ctrl+Shift+F」 的按鍵組合,但無法封鎖 「A+D」 的按鍵組合。

當您封鎖移位修改的索引鍵時,您必須將金鑰輸入為 “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"

需求

Windows 版本 支援
Windows Home No
Windows 專業版 No
Windows 企業版 Yes
Windows 教育版 Yes
Windows IoT 企業版 Yes

鍵盤篩選器 WMI 提供者參考資料

鍵盤篩選器按鍵名稱