Compartilhar via


WEKF_CustomKey.Add

Edições
✅ Suportadas IoT Enterprise LTSC
✅ IoT Enterprise
✅ LTSC✅
Enterprise
✅ Education

Cria uma nova combinação de teclas personalizadas e permite que o Filtro de Teclado bloqueie a nova combinação de teclas.

Sintaxe

[Static] uint32 Add(
    [In] string CustomKey
);

Parâmetros

CustomKey
[in] A combinação de teclas personalizada a adicionar. Para obter uma lista de nomes de chaves válidos, consulte Nomes de teclas de Filtro de Teclado.

Valor de retorno

Devolve um valor HRESULT que indica uma Constante de Não Erro WMI ou uma Constante de Erro WMI.

Comentários

WEKF_CustomKey.Add cria um novo objeto WEKF_CustomKey e define a propriedade Ativado do novo objeto como verdadeiro e a propriedade ID como CustomKey.

Se já existir um objeto de WEKF_CustomKey com a propriedade ID igual a CustomKey, WEKF_CustomKey.Add devolve um código de erro e não cria um novo objeto nem modifica quaisquer propriedades do objeto existente. Se o objeto de WEKF_CustomKey existente tiver a propriedade Ativado definida como falso, o Filtro de Teclado não bloqueia a combinação de teclas personalizada.

Exemplo

O código seguinte demonstra como adicionar ou ativar uma chave personalizada que o Filtro de Teclado irá bloquear utilizando os fornecedores do Windows Management Instrumentation (WMI) para o Filtro de Teclado.

$COMPUTER = "localhost"
$NAMESPACE = "root\standardcimv2\embedded"

# Create a handle to the class instance so we can call the static methods
$classCustomKey = [wmiclass]"\\$COMPUTER\${NAMESPACE}:WEKF_CustomKey"

# Create a function to add or enable a key combination for Keyboard Filter to block
function Enable-Custom-Key($KeyId) {

# Check to see if the custom key object already exists
    $objCustomKey = Get-WMIObject -namespace $NAMESPACE -class WEKF_CustomKey |
            where {$_.Id -eq "$KeyId"};

    if ($objCustomKey) {

# The custom key already exists, so just enable it
        $objCustomKey.Enabled = 1;
        $objCustomKey.Put() | Out-Null;
        "Enabled ${KeyId}.";

    } else {

# Create a new custom key object by calling the static Add method
        $retval = $classCustomKey.Add($KeyId);

# Check the return value to verify that the Add is successful
        if ($retval.ReturnValue -eq 0) {
            "Added ${KeyID}."
        } else {
            "Unknown Error: " + "{0:x0}" -f $retval.ReturnValue
        }
    }
}

# Enable Keyboard Filter to block several custom keys

Enable-Custom-Key "Ctrl+v"
Enable-Custom-Key "Ctrl+v"
Enable-Custom-Key "Shift+4"
Enable-Custom-Key "Ctrl+Alt+w"

# List all the currently existing custom keys

$objCustomKeyList = get-WMIObject -namespace $NAMESPACE -class WEKF_CustomKey
foreach ($objCustomKeyItem in $objCustomKeyList) {
    "Custom key: " + $objCustomKeyItem.Id
    "   enabled: " + $objCustomKeyItem.Enabled
    }