Compartir a través de


WEKF_Scancode

Ediciones admitidas
✅ IoT Enterprise LTSC
✅ IoT Enterprise
✅ LTSC✅
Enterprise
✅ Education

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 libera 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 personalizado y permite que 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 personalizado 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.
Scancode uint16 [key] Parte del código de examen de la combinación de teclas que se va a bloquear.
Habilitado Booleano [leer, escribir] 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.
- falso Indica que el código de examen no está bloqueado.

Observaciones

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

Puede especificar combinaciones de teclas incluyendo las teclas modificadoras en el parámetro Modifiers del método Add o modificando la propiedad Modifiers . Los nombres de modificador más comunes son >Ctrl, >Mayús, >Alt y >Win.

Por ejemplo:

En el código siguiente se muestra cómo agregar o habilitar un código de examen de teclado que el filtro de teclado bloqueará 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

Referencia del proveedor WMI de filtro de teclado

Filtro de teclado