AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Werkzeuge Sprachdateien von Localizer (Korzh) in Exe einbinden
Thema durchsuchen
Ansicht
Themen-Optionen

Sprachdateien von Localizer (Korzh) in Exe einbinden

Ein Thema von andydp · begonnen am 9. Okt 2012 · letzter Beitrag vom 14. Okt 2012
Antwort Antwort
Seite 1 von 2  1 2      
andydp

Registriert seit: 4. Aug 2006
36 Beiträge
 
#1

Sprachdateien von Localizer (Korzh) in Exe einbinden

  Alt 9. Okt 2012, 17:35
Hallo Leute

Ich benötige wieder einmal Eure geschätzte Hilfe.

Ich verwende zur Sprachumstelltung das Localizer Tool von Korzh.
Ich bin damit auch sehr zufrieden. Habe aber das Problem, dass ich in Zukunft
dem Setup keine *.lng Files mehr beilegen möchte.
In den Localizer Projekteinstellungen (Pro- Version) kann man die Sprachdateien
direkt in das exe- File einbinden. Hab nun aber das Problem, wie ich dies im Source- Code
bewerkstelligen muss. Es sind leider keine Demos für diesen Fall dabei.

Wäre Euch sehr dankbar, wenn mir jemand ein wenig auf die Sprünge helfen könnte.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.039 Beiträge
 
Delphi 12 Athens
 
#2

AW: Sprachdateien von Localizer (Korzh) in Exe einbinden

  Alt 9. Okt 2012, 18:34
In den Localizer Project Settings unter Other Options
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
andydp

Registriert seit: 4. Aug 2006
36 Beiträge
 
#3

AW: Sprachdateien von Localizer (Korzh) in Exe einbinden

  Alt 10. Okt 2012, 08:30
Hi Uwe

Danke für die Info, aber das wusste ich schon.
Ich habe das Problem, dass ich nicht weiss wie ich im Source- Code darauf reagieren muss, wenn die "exe-internen" Spachdateien und nicht die externen dll's verwendet werden.

Welche API- Funktionen muss ich nehmen?

Wäre toll, wenn jemand ein Beispiel hätte...
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.039 Beiträge
 
Delphi 12 Athens
 
#4

AW: Sprachdateien von Localizer (Korzh) in Exe einbinden

  Alt 10. Okt 2012, 08:42
Soweit ich weiß ändert sich gar nichts. Hast du es probiert? Welche Probleme tauchen auf?
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
andydp

Registriert seit: 4. Aug 2006
36 Beiträge
 
#5

AW: Sprachdateien von Localizer (Korzh) in Exe einbinden

  Alt 10. Okt 2012, 08:53
Ich habe die dll- Sprachdateien aus dem Verzeichnis gelöscht und sie in den Projekteinstellungen zum exe gelinkt.
Beim Aufstarten kann er die Spachdateien nicht mehr finden.

Ich habe in der Projektdatei anstelle von:
LocalizerOnFly.Init(ApplicationDir+'\');
neu
LocalizerOnFly.Init();
eingefügt.

In der Form Create Routine steht: LocalizerOnFly.SwitchToExt('ENG');

Beim Aufstarten kommt die Fehlermeldung: "Invalid File Format" und anschliessend " Localicer is not intialized"
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.039 Beiträge
 
Delphi 12 Athens
 
#6

AW: Sprachdateien von Localizer (Korzh) in Exe einbinden

  Alt 10. Okt 2012, 09:24
Der Localizer bindet nicht die DLLs ein, sondern die LNG-Dateien.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.039 Beiträge
 
Delphi 12 Athens
 
#7

AW: Sprachdateien von Localizer (Korzh) in Exe einbinden

  Alt 10. Okt 2012, 09:27
Ich habe die dll- Sprachdateien aus dem Verzeichnis gelöscht und sie in den Projekteinstellungen zum exe gelinkt.
Beim Aufstarten kann er die Spachdateien nicht mehr finden.

Ich habe in der Projektdatei anstelle von:
LocalizerOnFly.Init(ApplicationDir+'\');
neu
LocalizerOnFly.Init();
eingefügt.

In der Form Create Routine steht: LocalizerOnFly.SwitchToExt('ENG');

Beim Aufstarten kommt die Fehlermeldung: "Invalid File Format" und anschliessend " Localicer is not intialized"
Der Pfad beim Init muss zu den LNG-Dateien zeigen; den Pfad zu den DLLs stellt man über DLLDir ein. Du kannst beim Aufruf den Pfad zu den LNGs ruhig drin lassen, dann werden auch zusätzliche Sprachdateien gefunden, die nicht mit eingebunden sind.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
andydp

Registriert seit: 4. Aug 2006
36 Beiträge
 
#8

AW: Sprachdateien von Localizer (Korzh) in Exe einbinden

  Alt 10. Okt 2012, 10:25
Zitat:
Der Localizer bindet nicht die DLLs ein, sondern die LNG-Dateien.
Da hast Du natürlich vollkommen recht Es sind natürlich die *.lng Dateien, die ich jeweils im Setup mitliefere und die mit LocalizerOnFly.Init(); eingebunden werden. Das funktioniert ja auch alles ohne Probleme.

(Komischerweise verlangt Win 7 übrigens Administratorenrechte bei der Installation, sonst kommt es zu einer Fehlermeldung beim Aufstarten. Das Exe- File scheint auch schreibend auf die *.lng Dateien zuzugreifen, oder kannst Du mir diesen Sachverhalt erklären?)

Jetzt habe ich aber das Problem, dass ich diese *.lng Dateien nicht mehr mitliefern möchte, sonder dierekt im Exe- File integrieren möchte.
Im den Projekteinstellungen habe ich wie gesagt bei "Link Languages to exe File" gemacht, nun weiss ich einfach nicht, wie ich das im Source- Code bewerkstellingen kann, damit die Texte im Exe beim Aufstarten auch gefunden werden.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.039 Beiträge
 
Delphi 12 Athens
 
#9

AW: Sprachdateien von Localizer (Korzh) in Exe einbinden

  Alt 10. Okt 2012, 10:42
(Komischerweise verlangt Win 7 übrigens Administratorenrechte bei der Installation, sonst kommt es zu einer Fehlermeldung beim Aufstarten. Das Exe- File scheint auch schreibend auf die *.lng Dateien zuzugreifen, oder kannst Du mir diesen Sachverhalt erklären?)
Localizer erzeugt bei Bedarf die Resourcen-Dateien (DLLs) in besagtem DLLDir. Ist das nicht angegeben, wird das Verzeichnis der EXE genommen. Allerdings ist das häufig schreibgeschützt, was zu den von dir geschilderten Problemen führt. Ich setze daher das DLLDir vor dem Init auf einen eigenen Pfad im AppData-Folder.

Jetzt habe ich aber das Problem, dass ich diese *.lng Dateien nicht mehr mitliefern möchte, sonder dierekt im Exe- File integrieren möchte.
Im den Projekteinstellungen habe ich wie gesagt bei "Link Languages to exe File" gemacht, nun weiss ich einfach nicht, wie ich das im Source- Code bewerkstellingen kann, damit die Texte im Exe beim Aufstarten auch gefunden werden.
Wie gesagt, du brauchst dazu eigentlich gar nichts machen. Ich habe das hier bei einer Anwendung probiert: Sind die Sprachen eingebunden und die LNG-Dateien sind nicht vorhanden, läuft es genauso als wenn die Sprachen nur als LNG-Dateien vorliegen.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
andydp

Registriert seit: 4. Aug 2006
36 Beiträge
 
#10

AW: Sprachdateien von Localizer (Korzh) in Exe einbinden

  Alt 10. Okt 2012, 15:42
Hmmm...

Dann werde ich das wohl noch einmal probieren müssen.
Gebe Dir dann Bescheid.

Herzlichen Dank Uwe.
Wünsche Dir einen schönen Abend.

Gruss Andy
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 18:10 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