ExeName im Quellcode ändern

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut

ExeName im Quellcode ändern

Beitragvon Frank Ranis » 5. Feb 2019, 14:18 ExeName im Quellcode ändern

Hallo ,

gibt es eine Möglichkeit den ExeNamen im Quellcode zu ändern ?

Normal wird das ja während der Programmierphase unter ' Complilereinstellung / Ziel-Dateiname ' , z.B. project1 eingetragen und hinten fällt project1.exe raus.

Ich möchte das bedingt per {$define Bedingung} im Quellcode machen.

Code: Alles auswählen
 
Also oben
 
{$define Bedingung_eins}  oder  {$define Bedingung_zwei} vorgeben
 
{$ifdef Bedingung_eins}
-> ExeName soll zu otto.exe werden
{$endif}
 
{$ifdef Bedingung_zwei}
-> ExeName soll zu kalle.exe werden
{$endif}
 

Gibt es irgendwelche Compiler-Schalter ?

Gruß

Frank
www.flz-vortex.de
Frank Ranis
 
Beiträge: 130
Registriert: 24. Jan 2013, 21:22
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z) | 
CPU-Target: xxBit
Nach oben

Beitragvon pluto » 5. Feb 2019, 23:40 Re: ExeName im Quellcode ändern

Im Allgemeinen geht sowas unter Lazarus unter :
Projekte/Projekt Einstellungen/Pfade/Ziel Dateinamen.
MFG
Michael Springwald
Aktuelles Projekt: PlutoArduino
pluto
 
Beiträge: 6848
Registriert: 19. Nov 2006, 12:06
Wohnort: Oldenburg/Oldenburg
OS, Lazarus, FPC: Linux Mint 18.3 | 
CPU-Target: AMD
Nach oben

Beitragvon Frank Ranis » 6. Feb 2019, 09:55 Re: ExeName im Quellcode ändern

Hallo pluto,

pluto hat geschrieben:Im Allgemeinen geht sowas unter Lazarus unter :
Projekte/Projekt Einstellungen/Pfade/Ziel Dateinamen.


Ja das ist schon klar , hatte ich ja oben so beschrieben.

Ich muß wohl etwas mehr ausholen .

Ich habe mir ein Konfigurations-Programm geschrieben .

Hier kann man diverse Einstellungen vornehmen .
1) Voll - oder Demoversion
2) Seriennummern-Zähler
u.u.u.

Diese Tool schreibt dann die Einstellungen in eine Include-Datei 'lizenz.inc' , welche sich im Quellcode-Pfad befindet.
Hier steht dann z.B. oben an erster Stelle.

{$define Voll}

oder

{$define Demo}

Am Ende des Konfigurations-Programm wird dann 'lazbuild' aufgerufen .
Z.B. mit eine TProcess und den Parametern 'C:\lazarus\lazbuild -B Programm.lpr' .

In der Hauptunit wird die 'lizenz.inc' eingebunden.
Je nach Einstellung (Voll oder Demo) werden dann bestimmte Quell-Code-Blöcke mit kompiliert ode ausgeklammert .

So weit so gut , das funktioniert auch alles prima und ich brauch nicht jedesmal die Lazarus-IDE aufmachen .

Wenn alles Durchgelaufen ist fällt hinten Programm.exe raus , egal ob es nun die Demo oder die Vollversion ist.

Derzeit behelfe ich mir damit , das ich dann per File-Rename , die Programm.exe in

Programm_Voll.exe
oder
Programm_Demo.exe

umbenenne .

Finde ich aber nicht so elegant.

Besser fände ich , wenn Lazarus die Ausgabedatei (je nach {$define Voll} oder {$define Demo}) dann halt automatisch passend machen würde .
Also den Compiler / Linker dazu veranlassen den EXE-Filenamen zu ändern.

In der LPI möchte ich nicht rumpatchen , dann kann ich das mit dem File-Rename auch so lassen wie bisher.

Gruß

Frank
www.flz-vortex.de
Frank Ranis
 
Beiträge: 130
Registriert: 24. Jan 2013, 21:22
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z) | 
CPU-Target: xxBit
Nach oben

Beitragvon wp_xyz » 6. Feb 2019, 10:19 Re: ExeName im Quellcode ändern

Versuch's mal mit Build-Modes: "Projekt-Optionen" > '...' neben "Build-Modes". Build-Modes für Voll- und Demo-Version erzeugen. Nacheinander jeden Build-Mode aktivieren und unter "Compiler-Optionen" die gewünschten Parameter eintragen, v.a. auch den Ziel-Dateinamen. Je nachdem welcher Build-Mode aktiv ist, werden die entsprechenden Parameter verwendet. Zum schnellen Umschalten zwischen den Buildmodes vor dem Compilieren gibt es auch ein Icon in der Toolbar (2.Zeile, 3.Icon).
wp_xyz
 
Beiträge: 2797
Registriert: 8. Apr 2011, 08:01

Beitragvon af0815 » 6. Feb 2019, 10:43 Re: ExeName im Quellcode ändern

für den Vorschlag von wp und lazbuild dann den entsprechenden Mode verwenden
Code: Alles auswählen
--build-mode=<project/ide build mode> or --bm=<project/ide build mode>
override the project build mode.

Siehe auch http://wiki.lazarus.freepascal.org/lazbuild

Somit kannst du dir über den Buildmodus dann aussuchen welche Datei wie erzeugt wird, auch Verzeichnisse kann man damit umschalten.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
af0815
 
Beiträge: 3581
Registriert: 7. Jan 2007, 10:20
Wohnort: Niederösterreich
OS, Lazarus, FPC: FPC 3.2 Lazarus 2.0 per fpcupdeluxe | 
CPU-Target: 32Bit (64Bit)
Nach oben

Beitragvon Socke » 6. Feb 2019, 20:39 Re: ExeName im Quellcode ändern

Du könntest eine zusätzlich FPC-Konfiguration erstellen und dort den Parameter -okalle.exe setzen. Diese Konfigurationsdatei bindest du per @configfile.txt ein (Projektoptionen > Compilereinstellungen > Konfiguration und Ziele). Der entsprechende Parameter sollte in den Projektoptionen dann entsprechend leer sein.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Socke
 
Beiträge: 2572
Registriert: 22. Jul 2008, 18:27
Wohnort: Köln
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 8.1/Debian GNU/Linux/Raspbian/openSUSE | 
CPU-Target: 32bit x86 armhf
Nach oben

Beitragvon Frank Ranis » 7. Feb 2019, 09:54 Re: ExeName im Quellcode ändern

Hallo ,

ich danke euch , probiere mit den Infos mal herum .

Gruß

Frank
www.flz-vortex.de
Frank Ranis
 
Beiträge: 130
Registriert: 24. Jan 2013, 21:22
OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z) | 
CPU-Target: xxBit
Nach oben

• Themenende •

Zurück zu Freepascal



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 5 Gäste

porpoises-institution
accuracy-worried