Вниз
Скачать: CL | DM;

Поиск и папки с ограничением доступа   Найти похожие ветки 

 
demon ©   (2009-01-18 15:10) [0]

При поиске файлов на диске программа зависает когда пытаеться войти в папку, на которую пользователю запрещен доступ, например в "System Volume Information", как пропускать такие папки?

procedure SearchFilesInFolder(Dir: string; nps: integer);
var
 SearchRec: TSearchRec;
 i:integer;
 temps: string;
begin
Dir := IncludeTrailingPathDelimiter(Dir);
i := FindFirst(Dir + "*.*",faAnyFile,SearchRec);
while i <> ERROR_NO_MORE_FILES do
 begin
 if i = 0 then
   if (SearchRec.Name <> ".") and (SearchRec.Name <> "..") then
     if SearchRec.Attr and faDirectory <> 0
       then SearchFilesInFolder(Dir + SearchRec.Name,nps)
       else if SearchRec.Size > 0 then
         if nps = -1 then
         begin
             // делаем то что нужно
         end;
         i := FindNext(SearchRec);
 end;
FindClose(SearchRec)
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 SearchFilesInFolder("C:\", -1);
end;


 
AndreyV ©   (2009-01-18 15:37) [1]

if FindFirst(...) = 0
 until
...



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.027 c
2-1232213642
Новичек
2009-01-17 20:34
2009.03.01
Область со значками неких объектов


15-1230563097
Городской Шаман
2008-12-29 18:04
2009.03.01
Посоветуйте фантастику "робинзонаду"


2-1232135717
programmer90
2009-01-16 22:55
2009.03.01
Вопрос по ShellExecute


2-1232135242
inviz
2009-01-16 22:47
2009.03.01
Раскрыть все узлы TreeView


2-1232107211
Iriss
2009-01-16 15:00
2009.03.01
StringGrid переход на ячейку влево по Enter




   Наверх