如何使用PowerShell脚本禁用笔记本电脑的触摸屏?

时间:2015-10-14 03:32:52

标签: powershell touch

我的客户正在使用“HP Elitebook 840”触摸​​屏笔记本电脑,最近我们推出了一个网站用于他们的服务,遗憾的是,按钮上的点击事件在网站上无效。经过漫长的研发后,我们意识到触摸屏问题,鼠标点击事件在禁用后开始工作。

此处有更多信息:Click events are not working in Chrome, but event fires when we execute it manually from console

由于有超过40个用户拥有相同的触摸屏笔记本电脑,我们希望运行脚本来禁用这些笔记本电脑的触控功能。我认为网络管理员需要运行powershell脚本来完成它,但我无法弄清楚如何编写单个脚本来禁用系统的触摸屏

我正在阅读http://www.surfaceforums.net/threads/disable-the-touch-screen-to-use-the-pen.12338/,但由于我是PowerShell的新手,所以需要更详细的步骤。

4 个答案:

答案 0 :(得分:4)

Powershell nuggets禁用/启用笔记本电脑触摸屏。在华硕UX 501上的Windows 10中测试过。以管理员身份运行。

Get-PnpDevice | Where-Object {$_.FriendlyName -like '*touch screen*'} | Disable-PnpDevice -Confirm:$false

Get-PnpDevice | Where-Object {$_.FriendlyName -like '*touch screen*'} | Enable-PnpDevice -Confirm:$false

Source

答案 1 :(得分:2)

在PowerShell中使用它:

Set-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\Wisp\Touch -Name TouchGate -Value 0 -Type DWord

重启机器。

答案 2 :(得分:1)

您可以使用以下注册表项来禁用触摸输入(需要重新启动):

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Wisp\Touch]
"TouchGate"=dword:00000000

或使用PowerShell:

Set-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\Wisp\Touch ompany -Name TouchGate -Value 0 -Type DWord

答案 3 :(得分:1)

经过反复试验,我决定对我来说最好的办法是保存两个 .bat 文件来处理这个问题,这样我就可以使用 Launchy 轻松启动它。下面的代码 - 您可能需要根据您的配置为 ExecutionPolicy 添加逻辑,但对我来说是这样写的。

将其复制到记事本中并将其另存为 .bat - 只需将“禁用”切换为“启用”,您就可以向任一方向移动

@ECHO off
Powershell.exe -Command "& {Start-Process Powershell.exe -ArgumentList '-Command ""& {Get-PNPDevice | Where-Object FriendlyName -Like ''*touch screen*'' | Disable-PNPDevice -Confirm:$false} ; Get-PNPDevice | Where-Object FriendlyName -Like ''*touch screen*'' ; if ($Host.Name -eq ''ConsoleHost'') {Write-Host ''Press any key to continue...'' ; $Host.UI.RawUI.FlushInputBuffer() ; $Host.UI.RawUI.ReadKey(''""NoEcho,IncludeKeyUp''"") > $null}""' -Verb RunAs}"