Compartir a través de


WEKF_Scancode

Bloquea o desbloquea las combinaciones de teclas mediante el código de examen del teclado, que es un número entero que se genera cada vez que se presiona o suelta una tecla.

Sintaxis

class WEKF_Scancode {
    [Static] uint32 Add(
        [In] string Modifiers,
        [In] uint16 scancode
    );
    [Static] uint32 Remove(
        [In] string Modifiers,
        [In] uint16 Scancode
    );

    [Key] string Modifiers;
    [Key] uint16 Scancode;
    [Read, Write] boolean Enabled;
}

Miembros

En las tablas siguientes se enumeran los constructores, métodos, campos y propiedades que pertenecen a esta clase.

Métodos

Métodos Descripción
WEKF_Scancode.Add Agrega una nueva combinación de código de examen personalizada y permite que el filtro de teclado bloquee la nueva combinación de código de examen.
WEKF_Scancode.Remove Quita la combinación de código de examen personalizada especificada. El filtro de teclado deja de bloquear la combinación de código de examen que se quitó.

Propiedades

Propiedad Tipo de datos Calificadores Descripción
Modificadores string [key] Teclas modificadoras que forman parte de la combinación de teclas que se va a bloquear.
Código de examen uint16 [key] Parte del código de examen de la combinación de teclas que se va a bloquear.
Habilitado Booleano [lectura, escritura] Indica si el código de examen está bloqueado o desbloqueado. Esta propiedad puede ser uno de los siguientes valores:
- true Indica que el código de examen está bloqueado.
- false Indica que el código de examen no está bloqueado.

Comentarios

El teclado genera códigos de examen cada vez que se presiona una tecla. La misma tecla física siempre generará el mismo código de examen, independientemente del diseño del teclado que esté usando el sistema.

Puede especificar combinaciones de teclas mediante la inclusión de las teclas modificadoras en el parámetro Modificadores del método Add o modificando la propiedad Modificadores . Los nombres modificadores más comunes son "Ctrl", "Mayús", "Alt" y "Win".

Ejemplo

En el código siguiente se muestra cómo agregar o habilitar un código de examen de teclado que bloqueará el filtro de teclado mediante los proveedores de Instrumental de administración de Windows (WMI) para el filtro de teclado. En este ejemplo se modifican las propiedades directamente y no se llama a ninguno de los métodos definidos en WEKF_Scancode.

<#
.Synopsis
    This script shows how to use the WMI provider to enable and add 
    Keyboard Filter rules through Windows Powershell on the local computer.
.Parameter ComputerName
    Optional parameter to specify a remote machine that this script should
    manage.  If not specified, the script will execute all WMI operations
    locally.
#>
param (
    [String] $ComputerName
)

$CommonParams = @{"namespace"="root\standardcimv2\embedded"}
$CommonParams += $PSBoundParameters


function Enable-Scancode($Modifiers, [int]$Code) {
    <#
    .Synopsis
        Toggle on a Scancode Keyboard Filter Rule
    .Description
        Use Get-WMIObject to enumerate all WEKF_Scancode instances,
        filter against key values of "Modifiers" and "Scancode", and set
        that instance's "Enabled" property to 1/true.

        In the case that the Scancode instance does not exist, add a new
        instance of WEKF_Scancode using Set-WMIInstance.
    .Example
        Enable-Predefined-Key "Ctrl+V"

        Enable filtering of the Ctrl + V sequence.
#>

    $scancode =
        Get-WMIObject -class WEKF_Scancode @CommonParams |
            where {
                ($_.Modifiers -eq $Modifiers) -and ($_.Scancode -eq $Code)
            }

    if($scancode) {
        $scancode.Enabled = 1
        $scancode.Put() | Out-Null
        "Enabled Custom Scancode {0}+{1:X4}" -f $Modifiers, $Code
    } else {
        Set-WMIInstance `
            -class WEKF_Scancode `
            -argument @{Modifiers="$Modifiers"; Scancode=$Code} `
            @CommonParams | Out-Null
 
        "Added Custom Scancode {0}+{1:X4}" -f $Modifiers, $Code
    }
}

# Some example uses of the function defined above.

Enable-Scancode "Ctrl" 37

Requisitos

Edición de Windows Compatible
Windows Home No
Windows Pro No
Windows Enterprise
Windows Education
Windows IoT Enterprise

Referencia del proveedor WMI de filtro de teclado

Keyboard Filter