Filtro de teclado Powershell para usuarios específicos

Filtro de teclado Powershell para usuarios específicos

Esta página de Microsoft:https://docs.microsoft.com/en-us/windows-hardware/customize/enterprise/keyboardfilter-add-blocked-key-combinationsexplica cómo crear un script de PowerShell que deshabilitará combinaciones de teclas específicas.

Aquí están los fragmentos de código relevantes...

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.";
    }
}


Enable-Custom-Key "Windows+U"
# etc.

Sin embargo, ¿hay alguna forma de desactivar las combinaciones de teclas, pero sólo para un usuario específico? (es decir, quiero otro usuario "administrador" en la misma computadora que pueda continuar usando las combinaciones de teclas)

Pensé que tal vez iniciar sesión como ese usuario y ejecutar el script sería suficiente, pero por un lado, solo parece funcionar si ejecuto Powershell como administrador, y luego, cuando lo hago, vuelvo a cerrar sesión y a iniciar sesión como el otro. El usuario "administrador" y las combinaciones de teclas también están bloqueadas aquí.

Es Windows 10 IoT.

(Por cierto, estoy abierto a respuestas que no usan Powershell en absoluto. Anteriormente me habían dicho que usara el Editor de políticas de grupo, pero no pude encontrar la sección Filtro de teclado)

Respuesta1

Pruebe DisableKeyboardFilterForAdministrators

información relacionada