[已解决]怎么搜索C盘目录文件,和指定搜索目录层
本帖最后由 h111666b 于 2021-10-21 16:10 编辑贴上脚本
#include <File.au3>
;指定要搜索的文件和搜索层数
FindFile("E:", "Hash.exe", 10)
Func FindFile($Path, $FileName, $Layer)
$File = _FileListToArray($Path)
If Not @error Then
For $i = 1 To $File
If $File[$i] = $FileName Then
MsgBox(0, $i, $Path & "\" & $File[$i])
Else
$Array = StringSplit($Path, "", 1)
If $Array < $Layer Then
FindFile($Path & "\" & $File[$i], $FileName, $Layer)
EndIf
EndIf
Next
EndIf
EndFunc ;==>FindFile
以上脚本能搜索3层目录及以上目录文件,但数值为什么不是3而是10,数值16可以搜索4层,问题是搜索不到C:\Windows\System32和其它类似C:\Windows\之下目录内的文件
$Array = StringSplit($Path, "", 1) 这行是不是掉了个“\”$Array = StringSplit($Path, "\", 1) 多看帮助文档
_FileListToArrayRec($sPath, $sFileName, 1, -10, 0, 2)
感谢超版,是少了个“\”,现在目录层数对了,但还是搜索不到C:\Windows\System32文件夹内的文件
h111666b 发表于 2021-10-21 15:52
感谢超版,是少了个“\”,现在目录层数对了,但还是搜索不到C:\Windows\System32文件夹内的文件
前面加一行
DllCall('kernel32.dll', 'Bool', 'Wow64DisableWow64FsRedirection', 'ptr', '')
试试 随便使用了个脚本测试,没有添加禁用系统文件重定向,感谢超版支持,问题解决了
页:
[1]