我知道这个答案没有答案,但我对计算机工作有点兴奋,我想知道我应该阅读或研究什么才能与桌面客户端软件进行交互。这是一个例子:
我玩扑克,我希望能够与我的扑克客户进行互动,我不想做任何花哨或任何非法传播这样的机器人。例如,我希望有一个程序可以读取我的手,并且在玩完之后能够分析一些手或者可能是一些HUD Helper在线。
对于那些玩扑克的人,我希望能够自动在某些牌桌上自动进行,或者使用迷你HUD告诉我我的BB和我的对手。我知道有非常好的程序,我使用它们。我想知道如何从这些客户端读取信息以及如何与他们进行交互。我谈论扑克,但我想学习如何与其他程序进行交互。如果有人能告诉我从哪里开始我的研究,即使我从未将我的知识付诸实践,也会很高兴知道一些事情。我想知道事情是如何运作的。
PS:我应该使用C / C ++吗?我学习了Java,现在我正在学习Python和JS。我希望我解释自己,抱歉我的英语。 谢谢你。
答案 0 :(得分:1)
有几种与扑克客户交互的选择,或多或少的困难或复杂,并且取决于你想要完成的事情有效。
要获取信息,您可以通过网络嗅探数据,通过API钩子注入代码,使用屏幕抓取和OCR读取信息,解析手部历史......
要模拟用户操作,您可以通过编程方式执行鼠标点击和击键,将消息直接发送到扑克客户端的UI组件,甚至直接与扑克服务器交互,然后由您自己发送预期信息(此选项,以及从网络中嗅探数据以获取信息可能非常困难,因为您将不得不处理(可能是私有的)协议,数据加密等。
如果您了解Java,请尝试使用awt的Robot类。有了它,你可以读取屏幕的像素,获取屏幕截图,执行鼠标点击和击键...我确信Python中有类似的工具,但不知道它们。
用于UI自动化的另一个更高级别的工具是Sikuli。它可能对您有用。
我希望这些信息对您有用。