【问题标题】:Is there a way to disable/enable touchscreen programmatically without rebooting or signing out in Windows 10?有没有办法以编程方式禁用/启用触摸屏,而无需在 Windows 10 中重新启动或注销?
【发布时间】:2020-03-04 15:05:02
【问题描述】:

我可能有一个愚蠢的问题,但我很想知道你是否可以编写一个程序,例如在 c++ 中,它可以禁用或启用触摸屏而无需重新启动或退出,此外我只想禁用触摸屏,仍然可以在平板电脑上使用笔。 (在 Windows 10 上)。

我知道您可以通过设备管理器启用或禁用触摸屏,但这不是我想要的。另外我知道您可以调整注册表以禁用/启用触摸屏,但只有在重新启动或注销时才会生效。

我只想知道是否有办法做到这一点。 .net framework 或 win32 中是否有任何功能? 感谢您的任何回答。

【问题讨论】:

  • 也许这会有所帮助 (stackoverflow.com/questions/252185/…)
  • 我看到了这篇文章,但我不确定禁用设备是否也不会禁用平板笔。
  • 数位笔是自己的设备吗?我会想,是的。试一试,看看会发生什么。

标签: .net winapi touchscreen


【解决方案1】:

如果你想快速启用和禁用触摸屏,DevCon.exe 是一个不错的选择。

DevCon(DevCon.exe)是一个命令行工具,可以显示详细信息 有关运行 Windows 的计算机上的设备的信息。你也可以 使用 DevCon 启用、禁用、安装、配置和删除设备。

您可以使用DevCon 创建可以快速启用和禁用的快捷方式。

DevCon 启用:

devcon [/r] enable {* | ID [ID ...] | =class [ID [ID ...]]}

DevCon 禁用:

devcon [/r] disable {* | ID [ID ...] | =class [ID [ID ...]]}

获取硬件ID,例如HID\VID_####&PID_####&COL##

然后创建一个批处理文件

set "touchscreenid=ID_HERE"
devcon status "%touchscreenid%" | findstr "running"
if %errorlevel% == 0 (
    devcon disable "%touchscreenid%"
) else (
    devcon enable "%touchscreenid%"
)

最后,更改文件的属性,使其成为快捷方式。

详情可以参考warrenj203's answer

希望能帮到你。

【讨论】:

    猜你喜欢
    • 2020-09-28
    • 1970-01-01
    • 2014-01-09
    • 1970-01-01
    • 1970-01-01
    • 2021-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多