Freigeben über


WEKF_CustomKey.Remove

Unterstützte Editionen
✅ IoT Enterprise LTSC
✅ IoT Enterprise
✅ Enterprise LTSC
✅ Enterprise
✅ Education

Entfernt eine benutzerdefinierte Tastenkombination, sodass der Tastaturfilter die entfernte Tastenkombination nicht mehr blockiert.

Syntax

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

Parameter

CustomKey
[in] Die zu entfernende benutzerdefinierte Tastenkombination.

Rückgabewert

Gibt einen HRESULT-Wert zurück, der WMI-status oder einen WMI-Fehler angibt.

Hinweise

WEKF_CustomKey.Remove entfernt ein vorhandenes WEKF_CustomKey-Objekt . Wenn das Objekt nicht vorhanden ist, gibt WEKF_CustomKey.Remove einen Fehler mit dem Wert 0x8007007B zurück.

Da diese Methode statisch ist, können Sie sie nicht für ein Objekt instance aufrufen, sondern müssen sie stattdessen auf Klassenebene aufrufen.

Beispiel

Der folgende Code veranschaulicht, wie eine benutzerdefinierte Taste aus dem Tastaturfilter entfernt wird, damit sie nicht mehr mithilfe der WMI-Anbieter (Windows Management Instrumentation) für den Tastaturfilter blockiert wird.

$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);
    }
}