阻止除一个设备外的所有设备输入,可以使用以下PowerShell命令:
Add-Type -AssemblyName System.Windows.Forms
#获取所有输入设备
$devices = [System.Windows.Forms.InputLanguage]::InstalledInputLanguages
#选择一个允许的输入设备
$allowedDevice = $devices[0]
#循环禁用所有非允许的输入设备
foreach ($device in $devices) {
if ($device.Handle -ne $allowedDevice.Handle) {
Disable-Device $device.Handle
}
}
其中,Add-Type -AssemblyName System.Windows.Forms
是载入Windows Forms程序集;
[System.Windows.Forms.InputLanguage]::InstalledInputLanguages
是获取当前系统中的所有输入设备;
$allowedDevice = $devices[0]
是选择允许的一个输入设备;
foreach ($device in $devices)
是循环禁用非允许的输入设备;
Disable-Device $device.Handle
是禁用非允许的输入设备。
需要注意的是,PowerShell需要以管理员权限运行才能禁用设备。如果需要恢复设备,可以使用Enable-Device
命令。