SendKeys使用pywin32到PC游戏

时间:2014-02-08 18:18:23

标签: python pywin32 sendkeys

我正在使用python和pywin32库。我可以完美地发送例如Enter,或者在firefox中写'a'。但是我试图用PC游戏来做这件事,就像游戏不能检测到按键一样。

这是我的代码

import win32com.client as comclt
wsh = comclt.Dispatch("WScript.Shell")
wsh.AppActivate("pc game")
wsh.SendKeys("{ENTER}") #doesn't detect this :S

1 个答案:

答案 0 :(得分:1)

大多数Windows游戏使用DirectX API来读取击键,他们只是忽略那种按键消息。它们直接与硬件交互。因此,您的代码将不适用于99%的Windows游戏。

我会通过编写自己的驱动程序并发送按键来实现这一点,就像手动按下它们一样。这很复杂,但并非不可能。

此外,我认为有更好的方法可以实现您想做的任何事情。在大多数情况下发送击键并不是一个干净的解决方案(特别是如果你想作弊)。

希望它有所帮助。