|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Рекурсивный поиск файла |
|
[решено] Рекурсивный поиск файла
|
Новый участник Сообщения: 31 |
Профиль | Отправить PM | Цитировать
Поиск файла выполняется при помощи функции, и выполняется очень долго. Возможно ли реализовать поиск файла в каталогах и подкаталогах другим способом - более быстрым?
Func _FindFiles($sRoot, $sFile) Local $FileList $FileList = _FileListToArray($sRoot, $sFile, 1) If Not @error Then For $i = 1 To $FileList[0] $filename2 = StringMid($Filelist[$i],StringInStr($Filelist[$i],"\",0,-1)+ 1) MsgBox(64,"",$filename2) Next EndIf $FileList = _FileListToArray($sRoot, '*', 2) If Not @error Then For $i = 1 To $FileList[0] _FindFiles($sRoot & '\' & $FileList[$i], $sFile) Next EndIf EndFunf Func FileSearch($sPath, $sFileSrh) ;путь к каталогу и имя файла Local $sFile, $Search, $sRes = "" While 1 $Search = FileFindFirstFile($sPath & "\" & $sFileSrh) If @error Then Return "" While 1 $sFile = FileFindNextFile($Search) If @error Then ExitLoop $sFile = $sPath & "\" & $sFile If StringInStr(FileGetAttrib($sFile), "D") > 0 Then ContinueLoop $sRes = $sFile MsgBox(64,"",$sRes) WEnd FileClose($Search) $Search = FileFindFirstFile($sPath & "\*.*") If @error Then ExitLoop While 1 $sFile = FileFindNextFile($Search) If @error Then ExitLoop $sFile = $sPath & "\" & $sFile If StringInStr(FileGetAttrib($sFile), "D") = 0 Then ContinueLoop $sRes = FileSearch($sFile, $sFileSrh) If $sRes <> "" Then ExitLoop 2 WEnd ExitLoop WEnd FileClose($Search) Return $sRes EndFunc Можно ли организовать поиск файла через WinAPI? |
|
Отправлено: 10:37, 20-01-2010 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать Цитата madmasles:
|
|
------- Отправлено: 12:50, 05-02-2010 | #41 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 60
|
Профиль | Отправить PM | Цитировать |
Отправлено: 14:49, 05-02-2010 | #42 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать Цитата Sp01LeR:
|
|
------- Отправлено: 15:20, 05-02-2010 | #43 |
Пользователь Сообщения: 60
|
Профиль | Отправить PM | Цитировать Цитата Creat0R:
|
|
Отправлено: 17:12, 05-02-2010 | #44 |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать Цитата Sp01LeR:
Разное - [решено] Сбилась кодировка командной строки |
|
Отправлено: 18:39, 05-02-2010 | #45 |
Пользователь Сообщения: 60
|
Профиль | Отправить PM | Цитировать amel27, у меня этих проблем с ветками в реестре не было - chсp выдавало кодовую страницу 866...
изменив значение параметра "CodePage" на "4e3" (кодовая страница 1251) AutoIT берет с буфера STDOUT вместо OEM - ANSI!!! Потом проверял с поменяв значение на "fde9": и на MsgBox() и на записи в файл в кодировке ANSI - выводит знакомые ютээфовские крякозяблы типа PS: и еще, в том топике утверждали, что после создания параметра "CodePage" нужно ребутнуть винду - но у меня все работает и без перезагрузки... |
Последний раз редактировалось Sp01LeR, 05-02-2010 в 21:14. Отправлено: 21:01, 05-02-2010 | #46 |
Googler Сообщения: 3665
|
Профиль | Отправить PM | Цитировать Цитата Sp01LeR:
Цитата Sp01LeR:
|
||
Отправлено: 05:08, 06-02-2010 | #47 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать |
Отправлено: 11:38, 06-02-2010 | #48 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Поиск файла на компьютере | sashadeg | AutoIt | 12 | 30-01-2010 18:40 | |
Разное - [решено] Поиск по типу файла | 7human7 | Microsoft Windows 7 | 2 | 25-11-2009 09:51 | |
Интерфейс - [решено] Быстрый поиск | TEMA5 | Microsoft Windows 7 | 7 | 07-10-2009 20:42 | |
CMD/BAT - [решено] Как скопировать имя файла из текстового файла в код батника и т.д. | Nun-Nun | Скриптовые языки администрирования Windows | 6 | 13-05-2009 13:28 | |
Разное - [решено] поиск файлов | zai | Microsoft Windows 2000/XP | 20 | 07-10-2007 14:18 |
|