Compartilhar via


WEKF_CustomKey.Remove

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

Remove uma combinação de teclas personalizada, fazendo com que o Filtro de Teclado deixe de bloquear a combinação de teclas removida.

Sintaxe

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

Parâmetros

CustomKey
[in] A combinação de teclas personalizada a remover.

Valor de retorno

Devolve um valor HRESULT que indica status WMI ou um erro WMI.

Comentários

WEKF_CustomKey.Remove remove um objeto de WEKF_CustomKey existente. Se o objeto não existir, WEKF_CustomKey.Remove devolve um erro com o valor 0x8007007B.

Uma vez que este método é estático, não pode chamá-lo numa instância de objeto, mas tem de chamá-lo ao nível da classe.

Exemplo

O código seguinte demonstra como remover uma chave personalizada do Filtro de Teclado para que deixe de ser bloqueado através dos 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 remove a key combination
function Remove-Custom-Key($KeyId) {

# Call the static Remove() method on the class reference
    $retval = $classCustomKey.Remove($KeyId)

# Check the return value for status
    if ($retval.ReturnValue -eq 0) {

# Custom key combination removed successfully
        "Removed ${KeyID}."
    } elseif ($retval.ReturnValue -eq 2147942523) {

# No object exists with the specified custom key
        "Failed to remove ${KeyID}. No object found."
    } else {

# Unknown error, report error code in hexadecimal
        "Failed to remove ${KeyID}. Unknown Error: " + "{0:x0}" -f $retval.ReturnValue
    }
}


# Example of removing a custom key so that Keyboard Filter stops blocking it
Remove-Custom-Key "Ctrl+Alt+w"

# Example of removing all custom keys that have the Enabled property set to false
$objDisabledCustomKeys = Get-WmiObject -Namespace $NAMESPACE -Class WEKF_CustomKey;

foreach ($objCustomKey in $objDisabledCustomKeys) {
    if (!$objCustomKey.Enabled) {
        Remove-Custom-Key($objCustomKey.Id);
    }
}