Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.05.2011, 11:41   #1
maks5
Пользователь
 
Регистрация: 08.03.2011
Сообщений: 61
Вопрос Поиск файлов

Доброе время суток! Как найти адреса к файлам в папке, в которой лежит программа? Допустим мне нужно найти все exe файлы в этой папке. Заранее благодарен.
maks5 вне форума Ответить с цитированием
Старый 02.05.2011, 15:05   #2
MoBLer
Пользователь
 
Аватар для MoBLer
 
Регистрация: 30.12.2010
Сообщений: 91
Радость

Вот нашел в интернете, немного переделал можно искать любые файлы
Вложения
Тип файла: txt find.txt (825 байт, 190 просмотров)
Я тебе помог, добавь отзыв)))))
Статьи по программированию
MoBLer вне форума Ответить с цитированием
Старый 02.05.2011, 16:08   #3
maks5
Пользователь
 
Регистрация: 08.03.2011
Сообщений: 61
По умолчанию

Спасибо!! буду разбираться.
maks5 вне форума Ответить с цитированием
Старый 02.05.2011, 16:20   #4
maks5
Пользователь
 
Регистрация: 08.03.2011
Сообщений: 61
По умолчанию

А как с этими получеными адресами связать переменные?

Последний раз редактировалось maks5; 02.05.2011 в 19:22.
maks5 вне форума Ответить с цитированием
Старый 08.05.2011, 17:42   #5
maks5
Пользователь
 
Регистрация: 08.03.2011
Сообщений: 61
По умолчанию

Как?.......
maks5 вне форума Ответить с цитированием
Старый 08.05.2011, 20:33   #6
MoBLer
Пользователь
 
Аватар для MoBLer
 
Регистрация: 30.12.2010
Сообщений: 91
По умолчанию

Адреса найденых файлов записуются в массив. Потом используеш этот массив как угодно)))
Код:
uses Dos;
Const n=100; {максимальное кол адресов}
var total,totald:longint;
    i,m:integer;
     a:array[1..n] of string;{ массив стингов тут будут хранится адреса файлов} 
  Procedure SearchDisk(mask,cat:string);
  var DirInfo: SearchRec;
      CurDir:string;
  begin
  i:=1;
    GetDir(0,CurDir);
    chdir(cat);
    FindFirst(mask, AnyFile, DirInfo);
    while DosError = 0 do
      begin
      if (DirInfo.Name<>'.') and (DirInfo.Name<>'..') then
        begin

      {  writeln(curDir,'\',DirInfo.Name); а вот эта строчка выводит адрес на экран}
        a[i]:=curDir+'\'+DirInfo.Name;{добовляем в массив адрес}
        i:=i+1;
        if (DirInfo.Attr = $10) then
          begin { directory found }
          inc(totald);
          if (cat='\')
            then SearchDisk(mask,'\'+DirInfo.Name)
            else SearchDisk(mask,cat+'\'+DirInfo.Name);
          end
        else { file found }
          inc(total);
        end;
      FindNext(DirInfo);
      end;
    chdir(CurDir);
  end;
begin
total:=0; totald:=0;
SearchDisk('*.exe','');
writeln;
for m:=1 to  i-1 do {Выводим массив с адресами} 
writeln('a[',m,']=',a[m]);
readln
end.
Я тебе помог, добавь отзыв)))))
Статьи по программированию
MoBLer вне форума Ответить с цитированием
Старый 10.05.2011, 16:01   #7
maks5
Пользователь
 
Регистрация: 08.03.2011
Сообщений: 61
По умолчанию

спасибо огромное. Вот теперь можно разбираться.
maks5 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
поиск файлов rust-02 Общие вопросы Delphi 0 03.09.2010 19:35
Поиск файлов liljon Win Api 8 06.08.2010 22:10
Поиск файлов NewMen Помощь студентам 8 05.07.2010 09:18
Поиск файлов Romms Общие вопросы Delphi 3 27.09.2009 00:40