Hola,
A qué te refieres con "un .exe de Delphi"... Si te refieres al ejecutable de tu aplicación (desarrollada con Delphi) cuentas con "ParamStr", que retorna cada uno de los parámetros pasados a tu ejecutable. El parámetro número cero es la ruta del ejecutable de tu aplicación:
Código Delphi
[-]
var
ruta: string;
begin
ruta := ParamStr(0);
end;
Luego si quieres obtener el directorio de tu aplicación puedes hacerlo de este modo:
Código Delphi
[-]
uses
SysUtils;
var
ruta: string;
begin
ruta := ExtractFilePath(ParamStr(0));
end;