Versions / Build Informationen auslesen
-
- Beiträge: 131
- Registriert: Sa 5. Apr 2008, 17:57
- OS, Lazarus, FPC: Linux (Debian, Xubuntu), MacOS X, MS Win, Android, Web
- CPU-Target: 32Bit/64Bit
- Wohnort: Ulm
Versions / Build Informationen auslesen
Hallo,
unter den Projekteinstellungen kann man ja so schön die Versioninformationen zu einem Projekt inklusive der automatischen Inkrementierung der Buildnummer einstellen.
Das möchte ich nun wiederum auslesen um es in einem Infofenster den Nutzern anzeigen zu können.
Nun habe ich schon in der Dokumentation und auch in den Sources, z.Bsp. der Lazarus IDE gesucht aber leider machen die das etwas trickreich indem nur eine kleine Textdatei "version.inc" inkludiert wird.
Das wollte ich ja gerade vermeiden.
Hat damit schon Jemand gearbeitet oder weiss wie ich an diese Versionsinformationen komme?
Plattform wäre Linux, FPC 2.2.2 und Lazarus 0.9.26.1
Gruss,
Piper
unter den Projekteinstellungen kann man ja so schön die Versioninformationen zu einem Projekt inklusive der automatischen Inkrementierung der Buildnummer einstellen.
Das möchte ich nun wiederum auslesen um es in einem Infofenster den Nutzern anzeigen zu können.
Nun habe ich schon in der Dokumentation und auch in den Sources, z.Bsp. der Lazarus IDE gesucht aber leider machen die das etwas trickreich indem nur eine kleine Textdatei "version.inc" inkludiert wird.
Das wollte ich ja gerade vermeiden.
Hat damit schon Jemand gearbeitet oder weiss wie ich an diese Versionsinformationen komme?
Plattform wäre Linux, FPC 2.2.2 und Lazarus 0.9.26.1
Gruss,
Piper
-
- Beiträge: 440
- Registriert: So 10. Dez 2006, 14:59
- OS, Lazarus, FPC: MacOSX Lion 10.7 (L 0.9.31 FPC 2.7.1)
- CPU-Target: 64Bit
- Kontaktdaten:
Re: Versions / Build Informationen auslesen
Vor dem du dein Programm kompilierst, startest du dieses Programm (anhang^^)
rc2inc -i project1.rc -o version.inc
dann wird so eine Datei erstellt:
diese dann einfach nurnoch includieren:
und schon haste immer die aktuellsten Versionsnummern
nutze dies auch
Quellcode ist vorhanden damit man es auch auf Linux zum laufen bringt^^
MfG
rc2inc -i project1.rc -o version.inc
dann wird so eine Datei erstellt:
Code: Alles auswählen
consts
MajorVersion=0;
MinorVersion=0;
SubVersion=0;
Build=6;
Code: Alles auswählen
{$I version.irc}
nutze dies auch
Quellcode ist vorhanden damit man es auch auf Linux zum laufen bringt^^
MfG
- Dateianhänge
-
RcVersionToInc.zip
- (572.11 KiB) 107-mal heruntergeladen
-
- Beiträge: 131
- Registriert: Sa 5. Apr 2008, 17:57
- OS, Lazarus, FPC: Linux (Debian, Xubuntu), MacOS X, MS Win, Android, Web
- CPU-Target: 32Bit/64Bit
- Wohnort: Ulm
Re: Versions / Build Informationen auslesen
Das Programm r2inc liegt aber nur als .EXE vor. Hast Du da noch den Source oder eine Linux Version?
Gruss,
Piper
Gruss,
Piper
-
- Beiträge: 440
- Registriert: So 10. Dez 2006, 14:59
- OS, Lazarus, FPC: MacOSX Lion 10.7 (L 0.9.31 FPC 2.7.1)
- CPU-Target: 64Bit
- Kontaktdaten:
Re: Versions / Build Informationen auslesen
die source ist doch im archiv? o.o?
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Re: Versions / Build Informationen auslesen
Sicher, das das unter Linux funktioniert ? Dort kann meines Wissens keine windows resource (rc) angehängt werden. Und lrs werden dafür nicht erstellt.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
-
- Beiträge: 131
- Registriert: Sa 5. Apr 2008, 17:57
- OS, Lazarus, FPC: Linux (Debian, Xubuntu), MacOS X, MS Win, Android, Web
- CPU-Target: 32Bit/64Bit
- Wohnort: Ulm
Re: Versions / Build Informationen auslesen
also unter Linux scheint es momentan keine Möglichkeit zu geben das zu integrieren ausser man macht es selbst.
Falls jemand dazu eine Lösung weiss bin ich für jeden Hinweis dankbar.
Gruss,
Piper
Falls jemand dazu eine Lösung weiss bin ich für jeden Hinweis dankbar.
Gruss,
Piper
-
- Beiträge: 440
- Registriert: So 10. Dez 2006, 14:59
- OS, Lazarus, FPC: MacOSX Lion 10.7 (L 0.9.31 FPC 2.7.1)
- CPU-Target: 64Bit
- Kontaktdaten:
Re: Versions / Build Informationen auslesen
Werden die RCs nicht unter Linux erstellt? weil in den project-dateien steht dann ja IFDEF Windows then nimmt er diese rc rein aber er muss die rc ja nicht mitcompelieren nur erstellen
-
- Beiträge: 131
- Registriert: Sa 5. Apr 2008, 17:57
- OS, Lazarus, FPC: Linux (Debian, Xubuntu), MacOS X, MS Win, Android, Web
- CPU-Target: 32Bit/64Bit
- Wohnort: Ulm
Re: Versions / Build Informationen auslesen
Nein, die rc's werden wohl nicht erstellt. Ich habe in der IDE unter den Projekteinstellungen die Versionierung angeschaltet aber bekomme keinen Effekt.
Ist wohl unter Linux nicht aktiv...
Vielleicht mache ich aber auch noch Etwas falsch, will ich nicht ausschliessen.
Ist wohl unter Linux nicht aktiv...
Vielleicht mache ich aber auch noch Etwas falsch, will ich nicht ausschliessen.
-
- Beiträge: 440
- Registriert: So 10. Dez 2006, 14:59
- OS, Lazarus, FPC: MacOSX Lion 10.7 (L 0.9.31 FPC 2.7.1)
- CPU-Target: 64Bit
- Kontaktdaten:
Re: Versions / Build Informationen auslesen
wäre toll wenn die IDE automatisch ne version.inc erstellen würde
Re: Versions / Build Informationen auslesen
Moin, moin,
bislang nutze ich die Versionsinformation zu einem Prjekt nicht. denke mit also, probier es doch mal aus.
Schalte ich die Versionsinformation ein, includiert Lazarus mir folgende Zeile:
Die Datei 'prg_mobile.rc' gibt es aber nicht, also kommt ein Error - no resources.
Heißt das, es läuft auf einem WinMobile sowieso nicht?
Mach ich einen Denkfehler?
Es müßte doch nur eine Art Preprocessor über die ANWENDUNG.LPR laufen und Konstanten im Source incrementieren. Wieso gibt es dann Unterschiede zwischen den Plattformen? (Win/Mob/Linux/Mac)
Wird nicht eh eine zu compilierende Arbeitsdatei erstellt, in der nur Codeteile stehen, die nicht durch eine '{$IFDEF' Anweisung ausgeschlossen sind? Kommentare kommen auch gleich mit weg! Dies würde doch bedeuten, dass ein Preprocessor vor der Compilierung aktiv ist.
Gruß
Baba.
bislang nutze ich die Versionsinformation zu einem Prjekt nicht. denke mit also, probier es doch mal aus.
Schalte ich die Versionsinformation ein, includiert Lazarus mir folgende Zeile:
Code: Alles auswählen
{$IFDEF WINDOWS}{$R prg_mobile.rc}{$ENDIF}
Code: Alles auswählen
{$IFDEF WINDOWS}
Mach ich einen Denkfehler?
Es müßte doch nur eine Art Preprocessor über die ANWENDUNG.LPR laufen und Konstanten im Source incrementieren. Wieso gibt es dann Unterschiede zwischen den Plattformen? (Win/Mob/Linux/Mac)
Wird nicht eh eine zu compilierende Arbeitsdatei erstellt, in der nur Codeteile stehen, die nicht durch eine '{$IFDEF' Anweisung ausgeschlossen sind? Kommentare kommen auch gleich mit weg! Dies würde doch bedeuten, dass ein Preprocessor vor der Compilierung aktiv ist.
Gruß
Baba.
-
- Beiträge: 131
- Registriert: Sa 5. Apr 2008, 17:57
- OS, Lazarus, FPC: Linux (Debian, Xubuntu), MacOS X, MS Win, Android, Web
- CPU-Target: 32Bit/64Bit
- Wohnort: Ulm
Re: Versions / Build Informationen auslesen
Habe jetzt mal manuell eine Zeile:
eingefügt.
Daraufhin bekomme ich den Fehler:
Scheint unter Linux nicht zu funktionieren...
Schade!
Code: Alles auswählen
{$R project1.rc}
Daraufhin bekomme ich den Fehler:
Code: Alles auswählen
unit1.pas(48,1) Error: resource compiler not found, switching to external mode
Schade!
-
- Beiträge: 440
- Registriert: So 10. Dez 2006, 14:59
- OS, Lazarus, FPC: MacOSX Lion 10.7 (L 0.9.31 FPC 2.7.1)
- CPU-Target: 64Bit
- Kontaktdaten:
Re: Versions / Build Informationen auslesen
du musst das doch nicht in den quellcode einfuegen : {$R project1.rc}
wird diese datei erstellt?
wird diese datei erstellt?
-
- Beiträge: 131
- Registriert: Sa 5. Apr 2008, 17:57
- OS, Lazarus, FPC: Linux (Debian, Xubuntu), MacOS X, MS Win, Android, Web
- CPU-Target: 32Bit/64Bit
- Wohnort: Ulm
Re: Versions / Build Informationen auslesen
nein, es wird keine Datei erstellt.
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Re: Versions / Build Informationen auslesen
resourcen sind windows spezifisch
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
Re: Versions / Build Informationen auslesen
Die Lösung von EugenE funktioniert perfekt. Auch unter Linux. Bei mir erstellt Lazarus auch unter Linux die Project.rc. Vielleicht weil ich Sie über {$IFDEF Windows} einbinde.