Функция FileSearch – поиск файла в одной или более папках

Функция FileSearch в Delphi поиск файла в одной или более папках.

Функция FileSearch: Поиск в текущем каталоге и вне

var
  myFile       : TextFile;
  fileName     : string;
  fullFilePath : string;
  dir1, dir2   : string;

begin
  // Файл который мы будет искать
  fileName := 'Test.txt';

  // Запись текстового файла в текущий каталог
  AssignFile(myFile, fileName);
  ReWrite(myFile);
  Write(myFile, 'Hello World');
  CloseFile(myFile);

  // Запись текстового файла в другой каталог
  AssignFile(myFile, 'C:\Program Files\'+fileName);
  ReWrite(myFile);
  Write(myFile, 'Hello World');
  CloseFile(myFile);

  // Определение двух каталогов, где мы хотим искать файл
  dir1 := 'C:\No such directory';
  dir2 := 'C:\Program Files';

  // Поиск файла
  fullFilePath := FileSearch(fileName, dir1+';'+dir2);

  // Если мы поищем сейчас, мы найдем его в текущем каталоге
  if fullFilePath = ''
  then ShowMessage(fileName+' не найден')
  else ShowMessage(fullFilePath+' найден');

  // Теперь удаляем Test.txt из текущего каталога и повторяем поиск
  DeleteFile(fileName);

  // Если мы поищем теперь, мы найдем его в одной из директорий поиска
  fullFilePath := FileSearch(fileName, dir1+';'+dir2);
  if fullFilePath = ''
  then ShowMessage(fileName+' не найден')
  else ShowMessage(fullFilePath+' найден');
end;

Main Menu