找回密码
 加入
搜索
查看: 1554|回复: 3

关于网络游戏窗口的问题。

[复制链接]
发表于 2009-8-15 19:32:31 | 显示全部楼层 |阅读模式
请问,在不激活指定网络游戏窗口的情况下,如何向游戏里发送按键命令?

附:以记事本为例的不激活窗口的情况下向记事本中发送内容的问题已经解决,但如果换成网络游戏窗口就不灵,而且用AU3的window information工具无法查知游戏窗口的句柄。

记事本的例子代码:(记事本可以最小化,代码运行完毕后,再查看)

#include <PostMessage_UDF.au3>
#Include <Array.au3>

$hWnd1 = ControlGetHandle("无标题 - 记事本", "", "Edit1")
MsgBox(0,"$hWnd1",$hWnd1)

    For $i=1 to 5
           _SendText(String($hWnd1),$i)
           sleep (50)
            _Sendkeys(String($hWnd1),"b")
            Sleep (50)
          _sendkeys(string($hWnd1),"{enter}")
          sleep (50)
    Next
MsgBox(0,"$hWnd1","over")

网络游戏的例子代码:(以 星尘传说 为例,游戏的窗口标题是 《星尘传说》)

#include <PostMessage_UDF.au3>
#Include <Array.au3>
;;;;;;;;;;;;;;;;;;;XXX处不知道该写什么了,用AU3的window information 无法查知
$hWnd1 = ControlGetHandle("《星尘传说》", "", "XXX")
MsgBox(0,"$hWnd1",$hWnd1)

    For $i=1 to 5
           _SendText(String($hWnd1),$i)
           sleep (50)
            _Sendkeys(String($hWnd1),"x")
            Sleep (50)
    Next
MsgBox(0,"$hWnd1","over")
发表于 2009-8-15 20:18:36 | 显示全部楼层
如果窗口不使用消息队列来接收用户输入事件,PostMessage是无效的。
发表于 2009-8-16 09:54:30 | 显示全部楼层
顶下  我也想知道~~~~
 楼主| 发表于 2009-8-20 20:09:26 | 显示全部楼层
本帖最后由 king0000 于 2009-8-20 20:10 编辑
如果窗口不使用消息队列来接收用户输入事件,PostMessage是无效的。
sensel 发表于 2009-8-15 20:18


能详细解释下吗?谢谢~~!

对于有些网络游戏 ,无法找到如记事本那样的EDIT1,应该如何解决呢?
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-9-22 22:40 , Processed in 0.075831 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表