找回密码
 加入
搜索
查看: 2364|回复: 2

[系统综合] [已解决]如何打开一个文件夹后获得该文件夹句柄

[复制链接]
发表于 2010-7-7 19:49:47 | 显示全部楼层 |阅读模式
本帖最后由 feixiangdao 于 2010-7-8 15:43 编辑

用autoit打开一个文件夹,能否知道它的句柄,并且能进一步获取到该文件夹的路径,并不是一开始打开的路径,而是变化后的。

评分

参与人数 1金钱 +10 收起 理由
afan + 10 感谢主动将修改帖子分类为[已解决],请继续 ...

查看全部评分

发表于 2010-7-7 22:56:30 | 显示全部楼层
$Dir = @WindowsDir ;定义要打开的文件夹
RunWait('explorer ' & $Dir)
$a = _GetCWHandle(@WindowsDir)
MsgBox(0, '获取到的句柄:' & $a, '请在打开的文件夹中进行打开子文件夹或返回上级目录的操作,之后再点击确定')
MsgBox(0, '当前打开的文件夹:', ControlGetText($a, '', 'Edit1'))

Func _GetCWHandle($Dir)
        Local $all, $i, $CWHandle
        While 1
                Sleep(1)
                $all = WinList('[CLASS:CabinetWClass]')
                For $i = 1 To $all[0][0]
                        If ControlGetText($all[$i][1], '', 'Edit1') = $Dir Then
                                $CWHandle = $all[$i][1]
                                ExitLoop 2
                        EndIf
                Next
        WEnd
        Return $CWHandle
EndFunc   ;==>_GetCWHandle
 楼主| 发表于 2010-7-8 15:41:33 | 显示全部楼层
太酷了,超级版主的回复,还真的可以实现。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-10-3 14:19 , Processed in 0.077499 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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