Autohotkey 中文论坛

完整版: 模拟操作时能隐藏窗口吗?
你目前正在浏览的是简化版. 请点击这里浏览完整版
突然想到一个可能很fool的问题:在模拟鼠标操作的时候能不能把窗口隐藏或者最小化,就是不让人看见我在做什么,能实现吗?

[ 本帖最后由 badnull 于 2008-9-23 16:33 编辑 ]
不明白! 不过可以用 WinHide 隐藏窗口。
我是指在ahk中实现的对窗口的操作能不能不显示在屏幕上,就是让别人不知道我做了什么?
指的并不止是鼠標命令了啊,我是說ahk脚本执行的话,大多数都会把窗口调出来,比如:
Run, INETCPL.CPL
WinWait, Internet 属性
WinActivate, Internet 属性
WinWaitActive, Internet 属性
Control, TabRight, 4, SysTabControl321, Internet 属性

这样就会把IE属性的窗口调出来,我是想运行脚本时不显示这个窗口。
controlsend、controlclick等命令可以在最小化的条件下控制某窗口。但是此窗口是是必须在前台显示,即最小化到任务栏上,而隐藏于后台的窗口是无法​控制的。
就算是窗口隐藏,依然能够控制,不过要使用 DetectHiddenWindows 命令。
Run, INETCPL.CPL,,Hide 就可以以因此方式运行了!
不过需要 DetectHiddenWindows On ,要不然后面就不能操作隐藏窗口了!
貌似我这样做:并不能隐藏,这个窗口不能被隐藏?
DetectHiddenText,On
DetectHiddenWindows,On
Run,INETCPL.CPL,,Hide
[Image: GFIHH6ZBN7_201.gif] 好像是不能隐藏哦,可能是因为 这个窗体太特殊了。不是标准的exe文件,是由系统DLL调用的!
你可以尝试将这个窗口的位置移出桌面范围...
好思路
引用:原帖由 okey3m 于 2008-9-22 18:02 发表 [Image: back.gif]
你可以尝试将这个窗口的位置移出桌面范围...
怎么做?没听过。。。:L
参考 WinMove
引用:原帖由 okey3m 于 2008-9-23 12:08 发表 [Image: back.gif]
参考 WinMove

需要在窗口出来前先sleep一下,不然就移不出去,所以还是会出现窗口一闪而过。
谢谢了!
参考网址