gzkay
发表于 2009-2-10 15:47:28
有些软件直接用ControlClick不行,要WinActivate之后才可以用ControlClick,
但是如果刚好au3执行到ControlClick的时候用户在打字..就影响到了...
gzkay
发表于 2009-2-10 15:50:17
还有就是ControlClick对VB写的程序是不能直接用的..都要先激活窗口才能点击成功..
KiwiCsj
发表于 2009-2-10 15:51:27
那你都考虑到这个因素了,就在controlclick前再winactivate一次吧,这有什么问题么?
gzkay
发表于 2009-2-10 15:52:58
原帖由 KiwiCsj 于 2009-2-10 15:51 发表 http://www.autoitx.com/images/common/back.gif
那你都考虑到这个因素了,就在controlclick前再winactivate一次吧,这有什么问题么?
所以就影响到用户操作了啊..本来在打字的..一执行winactivate不就失去打字焦点啦..
KiwiCsj
发表于 2009-2-10 16:02:00
点游戏登陆器不就是要进游戏么?
要进游戏了还不许窗口影响到他打字?
这是什么逻辑?
感觉没有必要为此伤脑筋。
gzkay
发表于 2009-2-10 16:06:08
原帖由 KiwiCsj 于 2009-2-10 16:02 发表 http://www.autoitx.com/images/common/back.gif
点游戏登陆器不就是要进游戏么?
要进游戏了还不许窗口影响到他打字?
这是什么逻辑?
感觉没有必要为此伤脑筋。
我当初也是这么逃避的..但是...逃避是学不了东西的...到现在半年了..我的问题依然没解决..当初是在au3.net.cn论坛混的..就是因为这论坛太少高手了..
现在游戏登陆器做出来了..连进程守护也做出来了..当游戏掉线的时候..进程守护会自动再启动登陆器登陆游戏..登录过程就影响到聊天..灌水..看电影等等....
KiwiCsj
发表于 2009-2-10 16:21:14
个人以为不存在逃避不逃避的问题。只是必要性而已。au3脚本的存在还是以实际解决问题为主。用不着就不学,用得着就努力研究。光是为了学习而学习,那是有闲有钱又年轻的朋友们。这话是针对我自己个人而言,为此,呵呵,你的这个问题,我帮不上了。
:face (35):
KiwiCsj
发表于 2009-2-10 16:21:50
希望其他朋友能帮到你。
gzkay
发表于 2009-2-10 16:26:39
那是..要趁着有激情的时候学多点..特别是系统API的调用..
ceoguang
发表于 2009-3-22 22:48:11
不用UDF,autoit本身就已经有此函数.
_WinAPI_PostMessage
用法:
_WinAPI_PostMessage($hWnd, $iMsg, $iwParam, $ilParam)
说明:
句柄
$hWnd
$iMsg
事件消息
$iwParam
参数1
$ilParam
参数2
KiwiCsj误解了楼主的意思了
[ 本帖最后由 ceoguang 于 2009-3-22 22:49 编辑 ]
sxd
发表于 2009-3-23 08:20:53
是啊 重翻老帖发现 2个人会错意的聊了1页 很强啊......
试试mouseclickplus呢 就是mouseclick的postmessage版本
ceoguang
发表于 2009-3-23 23:37:17
原帖由 ebhb 于 2009-3-23 19:13 发表 http://www.autoitx.com/images/common/back.gif
按键精灵有几DLL插件支持后台鼠标移动以及后台按键,就是不知道怎么调用DLL
就是通过API的PostMessage或SendMessage实现的
akmm88
发表于 2009-3-24 23:32:09
楼主的做法是对的,AU3自带的函数,很多情况下是不能用的.
比如按ctrl+alt+del锁定,就有很多函数用不了了.
楼主的写法也没错,只是对象错了.
向 "计算器" 窗口,发送WM_LBUTTONDOWN ,"计算器" 也收到了,但是不会处理的.
因为它本身没有这个消息的响应函数.
你应该对某个 BUTTON发送BUTTONDOWN才有用.
如要输入文字,应该向EDIT控件发送WM_CHAR或WM_KEYDOWN WM_KEYUP,而不是窗口.
所以你还应该用findwindowEx() 来得到EDIT的HWND才行,继续努力...
等你的UDF完善了,共享一下吧. 希望说这么多对你有帮助. 我也经常用到这个,只是没有想过弄成UDF,因为我使用的主要工具不是AU3.
----(sanhen好像都没什么时间啊,建议SXD做个斑竹吧,这么热心.)补充一下:
sanhen 躲在车里,你想海扁他的话, 你不能找到车,对着车打,你还得用FINDWINDOWEX 找到SANHEN,然后对使用
右钩拳(sendmessage($sanhen,$WM_POWER,9999,9999)).
[ 本帖最后由 akmm88 于 2009-3-24 23:40 编辑 ]
sxd
发表于 2009-3-25 04:00:09
汗 做版主根本不够格....
我只是个打杂的
akmm88
发表于 2009-3-25 12:26:35
用Sendinput()比较烦琐