Versionsinformation unter Mac OSX auslesen

Versionsinformation unter Mac OSX auslesen

Beitragvon jus » 17. Jun 2011, 14:37 Versionsinformation unter Mac OSX auslesen

Hallo,

man kann ja unter Projekt->Projekteinstellungen, die Versionsinformationen einstellen. Doch ich habe nichts gefunden, wie kann man diese unter Mac wieder auslesen kann. Kann wer mir bitte einen Tipp geben?

Lg,
jus
jus
 
Beiträge: 43
Registriert: 6. Mai 2011, 12:29

Beitragvon Socke » 17. Jun 2011, 14:47 Re: Versionsinformation unter Mac OSX auslesen

MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Socke
Lazarusforum e. V.
 
Beiträge: 2661
Registriert: 22. Jul 2008, 18:27
Wohnort: Köln
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE | 
CPU-Target: 32bit x86 armhf
Nach oben

Beitragvon jus » 17. Jun 2011, 15:09 Re: Versionsinformation unter Mac OSX auslesen

Hallo Socke,

vielen Dank für die schnelle Antwort. Sicher dass das unter Mac auch funktioniert? Es steht da was von Win32 API und wenn ich versuche unter uses fileinfo einzubinden, dann findet Lazarus es nicht.

Lg,
jus
jus
 
Beiträge: 43
Registriert: 6. Mai 2011, 12:29

Beitragvon Socke » 17. Jun 2011, 16:02 Re: Versionsinformation unter Mac OSX auslesen

jus hat geschrieben:Sicher dass das unter Mac auch funktioniert?

Nö, war nur die erste Antwort von google. Die zweite Suche liefert das hier: http://lists.lazarus.freepascal.org/pip ... 43461.html
Fazit: Nur weil der Reiter in den Projektoptionen vorhanden ist, heißt das nicht, dass die auch in der fertigen Binärdatei enthalten sind.
Da die neueren FPC-Versionen aber Windows-Ressourcen auch in ELFs einbinden können, könntest du diesen Weg versuchen.
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein
Socke
Lazarusforum e. V.
 
Beiträge: 2661
Registriert: 22. Jul 2008, 18:27
Wohnort: Köln
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE | 
CPU-Target: 32bit x86 armhf
Nach oben

Beitragvon jus » 17. Jun 2011, 23:51 Re: Versionsinformation unter Mac OSX auslesen

Hallo,

..."Und sie dreht sich doch!".... :D Es scheint, dass Lazarus doch die Versionsinformation unter Mac reinkompiliert, bei eingeschalteter Versioninformation natürlich. Eine Vermutung ist, dass in project1.lpr der Befehl {$R *.res} drin ist und der Compiler auch immer brav eine project1.res erzeugt. Ich bin auch nur draufgekommen, wie ich mir die project1.res unter Windows in Resource Hacker angeschaut habe. Wenn man aber unter "Projekt->Projekteinstellungen ...->Versionsinformation" das Häkchen bei "Versionsinfo in ausführbahre Datei einfügen" rausnimmt, dann sieht man im ResourceHacker, dass die project1.res keine Versionsinformation enthält. Dazwischen sollte man aber das Projekt abspeichern und neu kompilieren, sonst werden die Einstellungen nicht sofort übernommen. (daran bin ich schon mal drübergestolpert :oops: )
Ok, nun wie liest man es aus:
Code: Alles auswählen
procedure TForm1.Button1Click(Sender: TObject);
var
  S: TResourceStream;
  ergebnis:AnsiString;
begin
  S := TResourceStream.CreateFromId(HInstance, 1, RT_VERSION);
  SetLength(ergebnis, s.Size);
  s.ReadBuffer(ergebnis[1], s.Size);
  memo1.Lines.add(ergebnis);
  s.free;
end;


Es scheint so zu sein, dass die Versionsinformation als Unicodestring gespeichert ist, da der Rückgabestring in Unicode16bit Format ist.
Interessant wäre noch, ob die obige Vorgehensweise auch unter Linux funktioniert. :?: Vielleicht könnte ja jemand, der ein Linux hat das mal ausprobieren.

Lg,
jus
jus
 
Beiträge: 43
Registriert: 6. Mai 2011, 12:29

Beitragvon Maik81ftl » 18. Jun 2011, 08:23 Re: Versionsinformation unter Mac OSX auslesen

wenn dies die Funktion dafür ist würde ich gerne dies mal testen.
Ubuntu 10.04 LTS ist meine Heimat. Lazarus ist meine Sprache :D und der Kreis Segeberg meine LIEBE :D
Maik81ftl
 
Beiträge: 619
Registriert: 9. Mär 2011, 16:34
Wohnort: seit 01.06.2011 in Wahlstedt
OS, Lazarus, FPC: Ubuntu10.04 LTS (L 0.9.31.0 FPC 2.4.4) | 
CPU-Target: 64Bit
Nach oben

Beitragvon jus » 18. Jun 2011, 23:36 Re: Versionsinformation unter Mac OSX auslesen

Hallo,
ich bin gerade drauf gekommen, dass ich wohl das Rad wieder neuerfunden habe. :( Anscheinend gab es dazu schon eine fertige Lösung. Ich habe es gerade ausprobiert und funktioniert auch unter Mac tadellos. Scheint eine allgemeine Lösung zu sein, die auch unter Linux funktioniert.

Die Beiträge dazu:
Versionsinfo unter Linux?
[Lazarus] Build Number

Lg,
jus
jus
 
Beiträge: 43
Registriert: 6. Mai 2011, 12:29

• Themenende •

Zurück zu MacOS



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

porpoises-institution
accuracy-worried