[gelöst] Compiler-Informationen auslesen

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
Antworten
compmgmt
Beiträge: 351
Registriert: Mi 25. Nov 2015, 17:06
OS, Lazarus, FPC: Win 10 Pro | Lazarus 1.8.2 | FPC 3.0.4
CPU-Target: i386 + x86_64
Wohnort: in der Nähe von Stuttgart
Kontaktdaten:

[gelöst] Compiler-Informationen auslesen

Beitrag von compmgmt »

Hallo,
ist es möglich einige Compiler-Informationen (z.B. Version des Compilers) als String auszulesen und im About-Dialog anzuzeigen?

Gruß
Patrick
Zuletzt geändert von compmgmt am Do 10. Aug 2017, 11:19, insgesamt 1-mal geändert.

Code: Alles auswählen

InitiateSystemShutdownExA(nil, nil, 0, true, false, $0005000F);
Have fun with this snippet ;)

TraumTaenzerDieter
Beiträge: 28
Registriert: So 14. Aug 2011, 09:11

Re: Compiler-Informationen auslesen

Beitrag von TraumTaenzerDieter »

Ja, mit {$I %FPCVERSION%}

compmgmt
Beiträge: 351
Registriert: Mi 25. Nov 2015, 17:06
OS, Lazarus, FPC: Win 10 Pro | Lazarus 1.8.2 | FPC 3.0.4
CPU-Target: i386 + x86_64
Wohnort: in der Nähe von Stuttgart
Kontaktdaten:

Re: Compiler-Informationen auslesen

Beitrag von compmgmt »

TraumTaenzerDieter hat geschrieben:Ja, mit {$I %FPCVERSION%}
Ah, Vielen Dank :)

Code: Alles auswählen

InitiateSystemShutdownExA(nil, nil, 0, true, false, $0005000F);
Have fun with this snippet ;)

TT73GP7
Beiträge: 238
Registriert: Di 29. Mär 2016, 20:45

Re: [gelöst] Compiler-Informationen auslesen

Beitrag von TT73GP7 »

mal nee dumme Frage

wozu braucht man so etwas eigentlich?

compmgmt
Beiträge: 351
Registriert: Mi 25. Nov 2015, 17:06
OS, Lazarus, FPC: Win 10 Pro | Lazarus 1.8.2 | FPC 3.0.4
CPU-Target: i386 + x86_64
Wohnort: in der Nähe von Stuttgart
Kontaktdaten:

Re: [gelöst] Compiler-Informationen auslesen

Beitrag von compmgmt »

TT73GP7 hat geschrieben:mal nee dumme Frage

wozu braucht man so etwas eigentlich?
Brauchen gar nicht, allerdings finde ich es ganz schön wenn die Compilerversion, der Kompilierungszeitpunkt, etc. im About-Dialog stehen.

Code: Alles auswählen

InitiateSystemShutdownExA(nil, nil, 0, true, false, $0005000F);
Have fun with this snippet ;)

Achtzig
Beiträge: 90
Registriert: Mo 15. Okt 2007, 13:09
OS, Lazarus, FPC: Debian
CPU-Target: xxBit

Re: [gelöst] Compiler-Informationen auslesen

Beitrag von Achtzig »

Soweit ich das in Erinnerung habe, betrifft das aber nur die entsprechende Einheit. Wenn die sich nicht ändert und nicht neu kompiliert werden muß, stimmt der Kompilierungszeitpunkt mit dem Zeitpunkt der Programmerstellung nicht mehr überein.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: [gelöst] Compiler-Informationen auslesen

Beitrag von af0815 »

Zusatztfrage:
Wo findet man diese %FPCVERSION% definiert, ich habe in der Wiki und auch sonst nichts drüber gefunden. Auch nicht welche es überhaupt gibt im zusammenhang mit {$I }. Ich kenne das nur als includestatement, aber nicht die zusätzlichen 'magics'.

Andreas
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Mathias
Beiträge: 6160
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: [gelöst] Compiler-Informationen auslesen

Beitrag von Mathias »

Zu diesem Thema gibt es noch ein paar andere interessante Parameter:

Code: Alles auswählen

  WriteLn({$I %CURRENTROUTINE%});
  WriteLn({$I %DATE%});
  WriteLn({$I %FPCTARGET%});
  WriteLn({$I %FPCTARGETCPU%});
  WriteLn({$I %FPCTARGETOS%});
  WriteLn({$I %FPCVERSION%});
  WriteLn({$I %FILE%});
  WriteLn({$I %LINE%});
  WriteLn({$I %LINENUM%});
  WriteLn({$I %TIME%});
  WriteLn({$I %USER%});
 
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: [gelöst] Compiler-Informationen auslesen

Beitrag von af0815 »

Wäre was für die Wiki
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Mathias
Beiträge: 6160
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: [gelöst] Compiler-Informationen auslesen

Beitrag von Mathias »

af0815 hat geschrieben:Wäre was für die Wiki

http://wiki.freepascal.org/sIncludecompilerinfo/de

PS: Habe gerade die Wiki ein wenig angepasst, :wink:
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

compmgmt
Beiträge: 351
Registriert: Mi 25. Nov 2015, 17:06
OS, Lazarus, FPC: Win 10 Pro | Lazarus 1.8.2 | FPC 3.0.4
CPU-Target: i386 + x86_64
Wohnort: in der Nähe von Stuttgart
Kontaktdaten:

Re: [gelöst] Compiler-Informationen auslesen

Beitrag von compmgmt »

Achtzig hat geschrieben:Soweit ich das in Erinnerung habe, betrifft das aber nur die entsprechende Einheit. Wenn die sich nicht ändert und nicht neu kompiliert werden muß, stimmt der Kompilierungszeitpunkt mit dem Zeitpunkt der Programmerstellung nicht mehr überein.
Richtig, deswegen habe ich zumindest den Kompilierungszeitpunkt in der unit der Main Form deklariert. Aber ich glaube ich definiere da zukünftig alles an Compilerinfos.

Code: Alles auswählen

InitiateSystemShutdownExA(nil, nil, 0, true, false, $0005000F);
Have fun with this snippet ;)

siro
Beiträge: 730
Registriert: Di 23. Aug 2016, 14:25
OS, Lazarus, FPC: Windows 11
CPU-Target: 64Bit
Wohnort: Berlin

Re: [gelöst] Compiler-Informationen auslesen

Beitrag von siro »

Na das ist ja geil, (sorry für die Wortwahl)

Code: Alles auswählen

 caption:={$I %LINE%};
:shock: Dein Sourcecode ist grade hier in Zeile....

Danke für die Info: coole Sache, wieder was gelernt.
Grüße von Siro
Bevor ich "C" ertragen muß, nehm ich lieber Lazarus...

Antworten