ExtractFilePath(application.exename) - так, например, можно узнать полный путь до файла.
Программирование на Delphi: получение имени исполняемого файла
В Delphi есть несколько способов получить имя исполняемого файла программы. Вот три примера:
ParamStr(0):
Эта функция возвращает имя исполняемого файла, который использовался для запуска программы.
Пример:
program MyProgram;
begin
WriteLn('Имя исполняемого файла: ', ParamStr(0));
end.
Application.ExeName:
Эта свойство возвращает имя исполняемого файла без пути к директории.
Пример:
program MyProgram;
begin
WriteLn('Имя исполняемого файла: ', Application.ExeName);
end.
GetModuleFileName():
Эта функция возвращает полный путь и имя указанного модуля (в этом случае, исполняемого файла).
Пример:
program MyProgram;
function GetModuleName: string;
var
ModuleHandle: HMODULE;
begin
ModuleHandle := GetModuleHandle(nil);
Result := GetModuleFileName(ModuleHandle, PChar(Result), MaxPath);
end;
begin
WriteLn('Имя и путь исполняемого файла: ', GetModuleName);
end.
Также можно использовать ExtractFilePath(Application.ExeName) для получения пути к директории исполняемого файла.
Обратите внимание, что ParamStr(0) работает только в том случае, если программа запускается из командной строки. Если программа запускается программно (например, другой Delphi-программой), эта функция вернет пустую строку.
Кроме того, эти функции и свойства платформо-зависимы, поэтому вам может потребоваться адаптация для различных операционных систем.
Статья рассказывает о том, как узнать имя файла своей программы в Delphi с помощью трех различных способов: Application.ExeName, ParamStr(0), GetModuleFileName().
Комментарии и вопросы
Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.