2011-11-02 49 views
3

我玩的是人类革命的诡计,有些东西可以用正确的4位数码访问。如何使用python将密钥发送给我正在玩的游戏?

我想知道如果你能制作一个脚本来强制它发送击键到游戏。 我已经尝试使用发送密钥,但我无法让它工作。任何想法?谢谢。

的Python:

-SendKeys

这是我已经尽力了,我发现在这里:

import win32com.client 
import time 
import SendKeys 
import os 
from ctypes import * 

shell = win32com.client.Dispatch("WScript.Shell") 
os.startfile('C:\\....exe') 
time.sleep(150) 
shell.SendKeys('1') 

我在第一次尝试的方法是公开的游戏与脚本,放一段时间来加载保存游戏,我打开一个终端来破解它,但密钥不发送。

-pywinauto:

使用pywinauto我有这样的:

from pywinauto import application 
import time 

app=application.Application() 
app.connect_(title_re = "Deus Ex: Human Revolution - The Missing Link", class_name = "DeusExHRE") 

现在我正在寻找该对话框可用。

AutoHotKeys:

所以除了蟒蛇,我与AutoHotKeys想:

这工作:

SetKeyDelay 180 

F12:: 
    Send {0 down} 
    Send {0 up} 
    Send {0 down} 
    Send {0 up} 
    Send {0 down} 
    Send {0 up} 
    Send {0 down} 
    Send {0 up} 
    Send {Backspace down} 
    Send {Backspace up} 
Return 

的keydelay是我发现的最小的是不放过任何buttons.I正在寻找一种方法来使其更快,也许通过使用不同的发送方法。

更新时间:

-pywinauto -autohotkeys

回答

3

你有没有试过this

+0

我在这里遇到的问题是:app.xxxxxx.TypeKeys('C'),我找不到正确的东西放在xxxx的地方,就像pywinauto页面上的记事本。 – GiannisIordanou

1

您可能已经想到了这一点,但为了以防万一,请确保您在几个地方尝试了您的解决方案。 IIRC,在Deus Ex中有几个地方,你必须先在游戏中发现代码,然后才能使用它,尽管代码本身是硬连接到游戏中的。

真的很酷的是,如果你有东西自动进行黑客小游戏。 :)

+0

我不知道是否只是在某些情况下通过猜测代码,即使使用正确的答案,也不能停用锁定。 – GiannisIordanou