找回密码
 加入
搜索
查看: 5147|回复: 9

[网络通信] [以解决]怎样判断文件夹是否打开

  [复制链接]
发表于 2012-12-27 20:34:46 | 显示全部楼层 |阅读模式
本帖最后由 renbkq 于 2012-12-30 16:19 编辑

额,问个小白的问题,怎样判断一个文件夹是否打开呢,然后还有个问题,怎么关闭最小化的文件夹?谢谢
发表于 2012-12-27 21:48:53 | 显示全部楼层
检查指定的窗口是否存在.
WinExists ( "窗口标题" [, "窗口文本"] )

关闭指定窗口.
WinClose ( "窗口标题" [, "窗口文本"] )
发表于 2012-12-28 11:00:02 | 显示全部楼层
遍历所有由资源管理器(explorer.exe)打开的窗口,检测标题是否是该文件夹的路径名,是就是打开了。
_WinAPI_EnumProcessWindows
发表于 2012-12-28 12:06:48 | 显示全部楼层
[au3]#include <WinAPIEx.au3>
Local $pid = ProcessList('explorer.exe')
For $i = 1 To $pid[0][0]
        $win = _WinAPI_EnumProcessWindows($pid[$i][1])
        For $j = 1 To $win[0][0]
                ConsoleWrite(_WinAPI_GetWindowText($win[$j][0]) & @CR)
        Next
Next

[/au3]
发表于 2012-12-28 14:52:17 | 显示全部楼层
我觉得获取 窗口句柄也应该可以把
发表于 2012-12-28 15:34:20 | 显示全部楼层
回复 5# ycy
怎么获取窗口句柄?
发表于 2012-12-28 16:48:49 | 显示全部楼层
用窗口捕捉工具
发表于 2012-12-28 16:51:29 | 显示全部楼层
本帖最后由 netegg 于 2012-12-28 16:59 编辑

回复 7# ycy
还好意思说,编写自动化程序难道中间还要先用信息工具去获取句柄填入然后才运行吗?
另外,说个过分点的情况,用不同的窗口打开500个文件夹都是最大化的,怎么用信息工具去找需要的窗口句柄
 楼主| 发表于 2012-12-30 16:08:43 | 显示全部楼层
本帖最后由 renbkq 于 2012-12-30 16:10 编辑

哇,第一次发帖就有这么多人回啊,恩经过我的测试二楼和四楼都可以,刚刚开始学习没多久,谢谢大家的帮助
发表于 2012-12-30 16:27:53 | 显示全部楼层
么哈哈,还有比我新的手啊,
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-6-1 18:07 , Processed in 0.079379 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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