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 | Sí |
Windows Education | Sí |
Windows IoT Enterprise | Sí |