如何查找指定目录并返回该目录的所在位置
这个是查找指定文件并返回该文件路径的代码,是否有办法将它改为查找指定目录并返回指定目录的路径?#NoTrayIcon
Opt("MustDeclareVars", 1)
#include <Constants.au3>
Local $Drive, $I, $File
$File = InputBox("输入", "输入要查找的文件名:", "", "", 180, 80, -1, -1)
If @error Or $File = "" Then Exit
$Drive = DriveGetDrive("FIXED")
For $I = 1 To $Drive
Local $foo, $line, $lines
$foo = Run(@ComSpec & " /c dir /b /s /a " & $File, $Drive[$I] & "\", @SW_HIDE, $STDOUT_CHILD)
$lines = ""
While 1
$line = StdoutRead($foo)
If @error Then ExitLoop
$lines &= $line
WEnd
If $lines = "" Then
MsgBox(16, "错误", "在驱动器" & $Drive[$I] & "没有找到要找的文件!", 2)
ContinueLoop 1
EndIf
MsgBox(0, "找到的文件:", $lines)
Next
[ 本帖最后由 wbsgege 于 2008-10-13 11:39 编辑 ]
$foo = Run(@ComSpec & " /c dir /b /s /a:d " & $File, $Drive[$I] & "\", @SW_HIDE, $STDOUT_CHILD)
只是利用了一个DOS命令!要学会修改......... $foo = Run(@ComSpec & " /c dir /b /s /a:d " & $File, $Drive[$I] & "", @SW_HIDE, $STDOUT_CHILD)
我试验了一下发现 将$foo返回的字符串 删除最后两个字符后 得到的新字符串 就是返回的文件路径
可以引用此路径打开文件夹 ,具体为什么要删除最后两个字符 我就不知道了 呵呵 实验成功,谢谢了
页:
[1]