Python中有没有一种方法可以只阻止一个特定的设备(键盘)?

2024-04-29 15:28:00 发布

您现在位置:Python中文网/ 问答频道 /正文

当我工作时,我的猫一直坐在我的笔记本电脑键盘上。我使用USB键盘/USB鼠标,我只想禁用笔记本电脑键盘/触摸板。所以我想做的是:

  1. 立即禁用笔记本电脑键盘和鼠标(需要时)
  2. 立即再次启用它们(需要时)
  3. 无需重新启动系统进行任何更改

我已经广泛地搜索了这个问题的答案,但没有找到简单可行的解决方案。所有这些解决方案都需要在windows 10上重新启动,而且非常痛苦。以下是一些示例(以及为什么这个问题不是重复的原因):

disable or lock mouse and keyboard in Python?

你基本上禁用了所有东西!甚至连USB键盘都禁用了。在选定的驱动程序上没有具体的禁用方法

这里还有另一个选项:Python Block Keyboard / Mouse Input

我们又一次禁用了一切!如果我们同时禁用两个键盘,我们该如何工作

这里还有另一个选项:https://superuser.com/questions/346570/how-can-i-disable-my-laptops-built-in-keyboard-in-windows-7

在这里,使用组策略禁用“所有自动驱动程序安装”的想法在IMO中显然是一种过激的想法!几周后,您将需要此功能,您将无法回忆如何启用此功能。它还需要重新启动

本页上的所有其他答案都要求您重新启动电脑

问题:

Python中有没有一种方法可以指定一个特定的驱动程序并从中捕获所有输入?也许我们可以修改此代码,使其仅在特定的设备驱动程序上工作

import pythoncom, pyHook 

def uMad(event):
    return False

hm = pyHook.HookManager()
hm.MouseAll = uMad
hm.KeyAll = uMad
hm.HookMouse()
hm.HookKeyboard()
pythoncom.PumpMessages()

Tags: 方法答案inwindows选项驱动程序鼠标键盘