Показать сообщение отдельно
  #1  
Старый 10.01.2013, 11:02
Аватар для Klyaksa
Klyaksa Klyaksa вне форума
Новичок
 
Регистрация: 07.01.2012
Сообщения: 90
Репутация: 10
По умолчанию Проблема со вставкой кода в отдельный поток

Здравствуйте товарищи ! В разработке программы столкнулся с такой проблемой. Есть такой код
Код:
procedure Find;
var
   SearchRec: TSearchRec; // информация о файле или каталоге
begin
   GetDir(0,cDir); // получить имя текущего каталога
   if cDir[length(cDir)] <> '\' then cDir := cDir+'\';

   if FindFirst(FileName, faAnyFile,SearchRec) = 0 then
       repeat
          if (SearchRec.Attr and faAnyFile) = SearchRec.Attr then
             begin
               Form1.p.Items.Add(cDir +  SearchRec.Name);
               inc(n);
               //form1.Caption :=inttostr(n);
             end;
        until FindNext(SearchRec) <> 0;

       // обработка подкаталогов текущего каталога

       if FindFirst('*', faDirectory, SearchRec) = 0 then
          repeat
              if (SearchRec.Attr and faDirectory) = faDirectory then
                    // каталоги .. и . тоже каталоги,
                    // но в них входить не надо !!!
                    if (SearchRec.Name[1] <> '.')and((SearchRec.Name[1] <> '..')) then
                       begin
                         ChDir(SearchRec.Name);// войти в каталог
                         Find; // __________________________________
                         ChDir('..');// выйти из каталога
                         
                       end;
          until FindNext(SearchRec) <> 0;
end;
Эту процедуру пробывал переписать в отдельный поток, но возникла проблема, код процедуры обращается к самой процедуре (выделено длинной линией).Пробывал так делать с потоком код переставал работать.
Ответить с цитированием