Фукция ParamStr() -- Путь к файлу и папке программы, определить откуда происходит запуск

Стандартная функция ParamStr() возвращает определенный параметр командной строки.

Объявление

Function ParamStr(Index : Word) : String;

Режим

Windows, Real, Protected

Описание

ParamStr возвращает параметр с номером Index из командной строки или пустую строку, если Index больше чем ParamCount. ParamStr(0) возвращает путь и имя выполняемой программы (например, C:\BP\MYPROG.EXE).

Примеры

Параметры командной строки

Получим все парамерты командной строк ,переданные при запуске программы (если они есть ,начинаются с индекса 1 и выше):

var
  I : Word;
begin
  WriteLn('Chislo parametrov: ', ParamCount);
 for I := 1 to ParamCount do
   WriteLn(ParamStr(I));

  readln();
end.

Путь к файлу/директории программы

Или же можно просто определить путь к файлу программы (возвращется при передаче нулевого индекса):

begin
  WriteLn('Put k failu programmy: ');
  WriteLn(ParamStr(0));
  readln();
end.

Источник: http://pascal.net.ru/ParamStr