AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Sprachdatei mit einkompilieren in eine Exe
Thema durchsuchen
Ansicht
Themen-Optionen

Sprachdatei mit einkompilieren in eine Exe

Ein Thema von DelphiManiac · begonnen am 16. Mai 2007 · letzter Beitrag vom 24. Okt 2010
Antwort Antwort
DelphiManiac

Registriert seit: 5. Dez 2005
742 Beiträge
 
#1

Sprachdatei mit einkompilieren in eine Exe

  Alt 16. Mai 2007, 12:11
Hallo,

ich weiß, dass es zum Thema Mehrsprachigkeit von Programmen schone einige Beiträge hier im Forum gibt,
trotzdem, habe ich bis jetzt noch keine zufriedenstellende Lösung gefunden.

Nutze zurzeit Gettext, und liefere mit meiner Anwendung den Ordner ...\locale\XX\LC_MESSAGES
mit der Sprachdatei (*.mo) aus.

Ist aber ziemlich blöd, da es immer wieder Programmerweiterungen gibt, und der Kunde die Software neu installieren muss, anstatt nur die Exe auszutauschen.

Lange Rede... Kurzer Sinn..

Ich wollte euch fragen, ob es nicht auch geht, die Sprachdatei in eine Exedatei mit einzukompilieren, um der Auslieferung der blöden Datei zu umgehen??

Dank euch!!

Gruß
DelphiManiac
  Mit Zitat antworten Zitat
Benutzerbild von Boombuler
Boombuler

Registriert seit: 14. Mär 2003
Ort: Osnabrück
244 Beiträge
 
Delphi 2009 Professional
 
#2

Re: Sprachdatei mit einkompilieren in eine Exe

  Alt 16. Mai 2007, 15:58
Hi,

da kannst du dich richtig kreativ betätigen... Aber ums einfach zu machen könntest du die Sprachdatei/en als Resource in dein Programm mit einbinden. Nimm dann einfach verschiedene Resourcenamen für die einzelnen Sprachen und lad die benötigte. Solltest hier im Forum einiges zum Thema Resourcen finden... Zum Auslesen kannst du z.B. TResourceStream verwenden!

MfG
Boombuler
"Look at you, Hacker. A pathetic creature of meat and bone, panting and sweating as you run through my corridors. How can you challenge a perfect, immortal machine?"
SwapIt Highscore:
  Mit Zitat antworten Zitat
DelphiManiac

Registriert seit: 5. Dez 2005
742 Beiträge
 
#3

Re: Sprachdatei mit einkompilieren in eine Exe

  Alt 16. Mai 2007, 16:30
Hi,

habe gerade rausgefunden, dass man die mo-Datei(Sprachdatei von Gettext) mit an die Exe hängen kann,
mit rechte Maustaste 'embed translations'

siehe Screenshot,

trotzdem Danke an euch...
Angehängte Grafiken
Dateityp: bmp tmp_177.bmp (483,2 KB, 63x aufgerufen)
  Mit Zitat antworten Zitat
Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#4

Re: Sprachdatei mit einkompilieren in eine Exe

  Alt 16. Mai 2007, 16:45
Hallo,

leider habe ich den Thread eben erst gelesen, sonst hätt ich Dir das gleich gesagt

Zitat von DelphiManiac:
habe gerade rausgefunden, dass man die mo-Datei(Sprachdatei von Gettext) mit an die Exe hängen kann,
mit rechte Maustaste 'embed translations'
Ja, das geht. Aber nur, wenn die EXE nicht gepackt wird: gnugettext von dxgettext speichert die Position der Übersetzungen in einem Dummystring innerhalb der EXE.

Ich habe deswegen mal einen regen Mailaustausch mit dem Autoren Lars Dybdahl gehabt (Anfang 2007). Ich habe das ganze Ding dann umgeschrieben und den Identifikationsstring an die EXE gehängt. Dann geht es sogar mit UPX vor und nach dem Anhängen der Übersetzungen (inkl. Entpacken von EXEs die schon Übersetzungen dranhaben).

Er hat es aber leider bisher nicht geschafft die neue Version online zu stellen, weil er in seinem Startup so viel zu tun hat

Gruß winkel79
Frederik
  Mit Zitat antworten Zitat
DelphiManiac

Registriert seit: 5. Dez 2005
742 Beiträge
 
#5

Re: Sprachdatei mit einkompilieren in eine Exe

  Alt 21. Aug 2007, 14:57
@winkel79:

mmh, ja das man die exe dann nicht packen kann ist blöd....
Ich würde aber gerne die Exe in UPX packen und Gnu Gettext weiterverwenden,
würdest du / darfst du die editierte Version veröffentlichen, bzw
ist diese vielleicht schon öffentlich?

Gruß
  Mit Zitat antworten Zitat
Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#6

Re: Sprachdatei mit einkompilieren in eine Exe

  Alt 21. Aug 2007, 18:38
Hi DelphiManiac

Zitat von DelphiManiac:
@winkel79:

mmh, ja das man die exe dann nicht packen kann ist blöd....
Ich würde aber gerne die Exe in UPX packen und Gnu Gettext weiterverwenden,
würdest du / darfst du die editierte Version veröffentlichen, bzw
ist diese vielleicht schon öffentlich?

Gruß
Also, ich möchte die Version hier nicht "öffentlich" machen, da ich es lieber Lars überlasse einen zentralen Ort für den offiziellen Download zu haben. Aber allein schon wegen der Lizenz kann jeder mich gerne Fragen. Online ist die neue Fassung bei ihm noch nicht, wir hatten ein paar mal gesprochen, aber er hat mit seiner neuen Firma zu viel zu tun...

Gruß winkel79

P.S.: Du hast gleich Post... Einfach die Dateien in das dxGettext Verzeichnis. Und die gnugettext.pas auch in die Erreichbarkeit Deines Compilers legen. Bitte keinen Versionsmix mit verschiedener gnugettext.pas und assemble.exe bzw. ggassemble.exe. Sonst geht das natürlich nicht.
Frederik
  Mit Zitat antworten Zitat
McSquirrel

Registriert seit: 23. Okt 2010
Ort: Hessen
2 Beiträge
 
Delphi 6 Personal
 
#7

AW: Sprachdatei mit einkompilieren in eine Exe

  Alt 24. Okt 2010, 22:33
Online ist die neue Fassung bei ihm noch nicht
Hallo,

wie Assertor mir gerade auf Anfrage mitteilte, ist seine Lösung inzwischen in das Projekt eingeflossen

Allerdings gibt es derzeit noch keinen neuen Download, d.h. man muss sich die Delphi-Quelldateien zu assemble.exe und ggassemble.exe aus dem SVN herunterladen und selbst kompilieren. Im SVN gibt es auch die aktuelle gnugettext.pas.

Hier der Link mit allen Infos zum SVN-Repository des Projekts:
http://developer.berlios.de/svn/?group_id=3252
Manuel
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:53 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz