WEKF_Scancode
Edições
✅ Suportadas IoT Enterprise LTSC
✅ IoT Enterprise
✅ LTSC✅
Enterprise
✅ Education
Bloqueia ou desbloqueia combinações de teclas utilizando o código de digitalização do teclado, que é um número inteiro que é gerado sempre que uma tecla é premida ou libertada.
Sintaxe
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;
}
Membros
As tabelas seguintes listam quaisquer construtores, métodos, campos e propriedades que pertençam a esta classe.
Métodos
Métodos | Descrição |
---|---|
WEKF_Scancode.Add | Adiciona uma nova combinação de código de análise personalizada e permite que o Filtro de Teclado bloqueie a nova combinação de código de análise. |
WEKF_Scancode.Remove | Remove a combinação de código de análise personalizada especificada. O Filtro de Teclado deixa de bloquear a combinação de código de análise que foi removida. |
Propriedades
Propriedade | Tipo de dados | Qualificadores | Descrição |
---|---|---|---|
Modificadores | string | [chave] | As teclas modificadoras que fazem parte da combinação de teclas a bloquear. |
Scancode | int16 | [chave] | A parte do código de análise da combinação de teclas a bloquear. |
Habilitada | Booliano | [ler, escrever] | Indica se o código de análise está bloqueado ou desbloqueado. Esta propriedade pode ser um dos seguintes valores: - true Indica que o código de análise está bloqueado. - falso Indica que o código de análise não está bloqueado. |
Comentários
Os códigos de análise são gerados pelo teclado sempre que é premida uma tecla. A mesma chave física irá sempre gerar o mesmo código de análise, independentemente do esquema de teclado que está a ser utilizado pelo sistema.
Pode especificar combinações de teclas ao incluir as chaves modificadoras no parâmetro Modificadores do método Add ou ao modificar a propriedade Modificadores . Os nomes dos modificadores mais comuns são >Ctrl, >Shift, >Alt e >Win.
Exemplo
O código seguinte demonstra como adicionar ou ativar um código de digitalização de teclado que o Filtro de Teclado irá bloquear utilizando os fornecedores do Windows Management Instrumentation (WMI) para o Filtro de Teclado. Este exemplo modifica as propriedades diretamente e não chama nenhum dos métodos definidos no 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