WEKF_CustomKey.Add
Unterstützte Editionen
✅ IoT Enterprise LTSC
✅ IoT Enterprise
✅ Enterprise LTSC
✅ Enterprise
✅ Education
Erstellt eine neue benutzerdefinierte Tastenkombination und aktiviert den Tastaturfilter, um die neue Tastenkombination zu blockieren.
Syntax
[Static] uint32 Add(
[In] string CustomKey
);
Parameter
CustomKey
[in] Die hinzuzufügende benutzerdefinierte Tastenkombination. Eine Liste der gültigen Schlüsselnamen finden Sie unter Tastaturfilter-Tastennamen.
Rückgabewert
Gibt einen HRESULT-Wert zurück, der eine WMI-Non-Error-Konstante oder eine WMI-Fehlerkonstante angibt.
Hinweise
WEKF_CustomKey.Add erstellt ein neues WEKF_CustomKey-Objekt und legt die Enabled-Eigenschaft des neuen Objekts auf true und die Id-Eigenschaft auf CustomKey fest.
Wenn bereits ein WEKF_CustomKey Objekt mit der Id-Eigenschaft auf CustomKey vorhanden ist, gibt WEKF_CustomKey.Add einen Fehlercode zurück und erstellt kein neues Objekt oder ändert keine Eigenschaften des vorhandenen Objekts. Wenn für das vorhandene WEKF_CustomKey-Objekt die Enabled-Eigenschaft auf false festgelegt ist, blockiert tastaturfilter die benutzerdefinierte Tastenkombination nicht.
Beispiel
Der folgende Code veranschaulicht das Hinzufügen oder Aktivieren einer benutzerdefinierten Taste, die der Tastaturfilter mithilfe der WMI-Anbieter (Windows Management Instrumentation) für den Tastaturfilter blockiert.
$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
}