Python能否使用BlockInput()?
我在寻找其他方法来屏蔽鼠标和键盘。有些人建议使用 BlockInput()。请问这可以用Python实现吗?我在用Windows XP。
2 个回答
0
如果你想实现和被接受的答案一样的效果,但又不想要管理员权限或提升的权限,你可以看看我在这里对一个类似问题的回答:
3
这些WinAPI函数可以通过ctypes
模块来调用。
你需要知道这个函数在哪个DLL文件里。在这个例子中,它在user32.dll里(这个信息可以在你提到的msdn文档页面找到)。
接下来,你需要了解它的参数。这个函数需要一个BOOL
类型的参数,所以我们可以直接使用Python的bool
类型。
from ctypes import *
ok = windll.user32.BlockInput(True)
关于返回值的解释可以在文档中找到。输出会是一个Python的int
类型,这在这个简单的例子中是可以的,但你要知道ctypes
允许你指定确切的参数和返回值类型,如果需要的话。
我在Windows 7上试过这个,效果不错,但只有在程序以管理员权限运行时才有效(否则它只会返回0)。因为你在使用XP,这可能对你来说不太相关。