Application.ExeName или ParamStr(0)?

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Ответить
Аватара пользователя
McLion
постоялец
Сообщения: 332
Зарегистрирован: 06.02.2015 17:41:00

Application.ExeName или ParamStr(0)?

Сообщение McLion »

Скажите какая разница между

Код: Выделить всё

ExtractFilePath(Application.ExeName);

и

Код: Выделить всё

ExtractFilePath(ParamStr(0);


и что лучше применять?
Аватара пользователя
alexs
долгожитель
Сообщения: 4069
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

Смотрим в коде:

Код: Выделить всё

function TCustomApplication.GetExeName: string;
begin
  Result:=Paramstr(0);
end;


Так что - одинаково
Аватара пользователя
DYUMON
постоялец
Сообщения: 234
Зарегистрирован: 11.03.2009 12:32:54
Контактная информация:

Сообщение DYUMON »

Дабы не плодить лишнии темы, хотел узнать , данная функция вернет каталог где находится программа одинаково и в винде и в линухе? если делать кросплатформенное приложение?
Аватара пользователя
alexs
долгожитель
Сообщения: 4069
Зарегистрирован: 15.05.2005 23:17:07
Откуда: г.Ставрополь
Контактная информация:

Сообщение alexs »

Да
Аватара пользователя
McLion
постоялец
Сообщения: 332
Зарегистрирован: 06.02.2015 17:41:00

Сообщение McLion »

Да, это к обоим функциям?
Аватара пользователя
Лекс Айрин
долгожитель
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград
Контактная информация:

Сообщение Лекс Айрин »

McLion, конечно, к обоим.
Аватара пользователя
bormant
постоялец
Сообщения: 408
Зарегистрирован: 21.03.2012 11:26:01

Сообщение bormant »

DYUMON писал(а):и в винде и в линухе?

Но в MacOS может быть только именем, если запущено из комстроки.
http://www.freepascal.org/docs-html/rtl ... amstr.html
Аватара пользователя
Лекс Айрин
долгожитель
Сообщения: 5723
Зарегистрирован: 19.02.2013 16:54:51
Откуда: Волгоград
Контактная информация:

Сообщение Лекс Айрин »

bormant, ну так в маках не так много народу сидит... да и всегда можно попробовать поискать другой способ
Аватара пользователя
Tango
постоялец
Сообщения: 162
Зарегистрирован: 31.05.2012 17:07:30

Сообщение Tango »

Лучше ParamStr(0), так не тянется Application, если конечно это не графическое приложение.

Код: Выделить всё

Path:=ExtractFilePath(ParamStr(0));
Ответить