Всем привет, есть обычное GUI приложение на Lazarus
Можно сделать чтобы с определенным параметром оно запускалось как консольное приложение, а без параметра как GUI?
Можно, я делал, но для unix систем приходилось хукать Interfaces.pas из-за Wayland и отсутствия в нём переменной DESKTOP.
...
uses
...
CustApp;
type
//Тип режима запуска приложения
TLaunchModes = (Console, Service, GUI, Empty);
...
with TCustomApplication.Create(nil) do
try
if HasOption('s', 'service') then
LaunchMode := Service
else
if HasOption('c', 'console') then
LaunchMode := Console
else
if HasOption('g', 'GUI') then
LaunchMode := GUI
else
LaunchMode := Empty;
finally
Free;
end;
...