ncxj 发表于 2015-8-7 21:08:53

[已解决]被一个问题卡住很久了,关于WinActivate(),WinMove (),MouseMove ()

本帖最后由 ncxj 于 2015-8-8 22:54 编辑

大神们,谁能帮帮我,被一个问题被卡住很久了

                $hwnd = WinActivate("招商证券智远", "")
                Sleep(1000)
                MouseMove ( 361,1384,1)
                WinMove ( $hwnd, "",150,150,800,600)

    运行了第一行之后,MouseMove 和 WinMove 函数都不能用了,鼠标也不会按照程序指令移动了,要怎么办啊?
    我试过别的程序都可以用上面的办法直接改变窗口大小,但是这个程序就无论如何改变不了.
    这个程序是Vc++6.0编写,下载地址在http://www.newone.com.cn/ws/html?arg=2personal/trade/jiaoyi_6,第一个就是.
    因为每次都要手动调整窗口大小,很麻烦.所以我想写几句命令帮我自动调整.
    请问大师们,这个问题如何解决啊?搜索论坛也没找到一点头绪.谢谢了

haijie1223 发表于 2015-8-7 23:39:53

还要安装软件啊~目测应该是把sleep那一行换成 $hwnd=WinGetHandle("招商证券智远"),自己测试吧

ncxj 发表于 2015-8-8 08:16:22

回复 2# haijie1223


    多谢超版回复.经测试,换成WinGetHandle还是无效.
    最奇怪的是,运行WinActivate()函数之后,MouseMove ()失效,必须手动移动鼠标,MouseMove 才能重新生效.
   WinMove ()也无效,本来打算用鼠标函数直接调整窗口的对角,改变窗口大小和位置,现在两种方法都失效,所以才被卡住了.
    该软件安装后,选择中间"独立行情",无需用户名和密码即可进入.手动调整四角位置是可以改变窗口位置大小的.
    不知道这个软件为什么会这样?

haijie1223 发表于 2015-8-8 15:08:52

经测试可行~多想想办法嘛$hwnd = WinGetHandle("")
WinActivate($hwnd)
MouseMove(361, 1384, 1)
WinMove($hwnd, "", 150, 150, 800, 600)

ncxj 发表于 2015-8-8 16:16:43

本帖最后由 ncxj 于 2015-8-8 22:14 编辑

回复 4# haijie1223


    谢谢阿杰版主提供新的思路.终于弄好了.

ncxj 发表于 2015-8-8 16:42:53

本帖最后由 ncxj 于 2015-8-8 22:16 编辑

autoit还是很有用的.再次感谢超版.
页: [1]
查看完整版本: [已解决]被一个问题卡住很久了,关于WinActivate(),WinMove (),MouseMove ()