键盘控制Python

时间:2017-04-25 18:42:37

标签: python python-2.7 python-3.x keyboard

我希望python单击 Enter 。但是,我不想安装任何外部扩展程序。我想让它点击回车而不使用它们。我找到了许多像win32这样的资源,但我想在不使用外部资源的情况下这样做。我不介意它在哪个版本的python上。

  1. 这可能吗?
  2. 如果是这样,怎么样?
  3. 我在网上看过但却找不到任何东西。拜托,有人可以帮忙吗?

    提前谢谢。

1 个答案:

答案 0 :(得分:1)

  1. 绝对可以使用ctypes库直接与Windows dll对话
  2. 如果你不想安装一个帮助你完成所有这些工作的辅助模块,那么你就必须通过追寻真正低级别的代码来完成旧学校。

    简而言之,使用SendInput调用user32.dll ctypes.windll.user32.SendInput函数。获得正确的参数祝你好运 - 我没有耐心为你解决这个问题。

    Here are the docs for the user32.dll SendInput API

    Here is a helpful resource for figuring out the data types.这实际上是ctypes的一部分,可以由import ctypes.wintypes导入,但我发现它是读取实际代码的指导。

    例如,要创建一个具有虚拟密钥代码VK_RETURN值的WORD,我认为它将是

    >>> ctypes.wintypes.WORD(0x0D)
    c_ushort(13)
    

    但是你必须从那里拼凑起来。只需构建参数并调用函数即可。

    最后提示,请使用第二个链接中的示例来了解如何构建" C"类型结构。然后使用ctypes.Structure

    自己构建一个