![]() |
Localizer für Delphi-Programme
Hallo zusammen,
ich möchte gerne mein Programm mehrsprachig machen. Dazu habe ich mittlerweile mehrere Localizer im Freewarebereicht ausprobiert. Hängen geblieben bin ich bei ![]() Andere Alternative wäre nur noch, den Inhalt von Items.NodeData auszulesen und da stellt sich mir die Frage, wie ? |
Re: Localizer für Delphi-Programme
Weil ich es gerade lese:
Hat jemand Infos, wie man diese "serialisierten" Daten auslesen könnte? Bitte nicht hauen, weil ich mich noch nicht groß informiert habe... |
Re: Localizer für Delphi-Programme
Zitat:
|
Re: Localizer für Delphi-Programme
Zitat:
* Entweder du deserialisierst diese Daten selber: (würde ich nicht machen, da man so sich erstmal in das Format einarbeiten und auch noch aufpassen muß, wenn sich dieses mal ändert (wie z.B. beim Sprung von D2007 nach D2009) * Dann könne man den Teil der Item.Data, bzw. die ganze TreeView aus der DFM extrahieren und diese Daten von einer temporär erstellen TreeView deserialisieren lassen, dann ändert man über den tree die Daten und serialisiert am Ende alles wieder. * Oder man läßt die komplette Form von der DFM deserialisieren, welches wohl das Beste ist, da man dann gleich alles über die VCL bearbeiten kann und ebenfalls auch hier am Ende wieder serialisieren. Die letzen Beiden haben nur einen Nachteil. Und zwar, daß man den Lokalisierer möglichst mit der selbe Delphi-Version kompiliert, womit auch diese Form serialisiert wurde. Aber mal was Anderes, willst du deine Anwendung über eine Fremdanwendung lokalisieren und alles direkt in der EXE umbauen lassen oder soll dieses zur Laufzeit und womöglich noch mit mehreren integrierten Sprachen passieren? PS: Ich hatte ja auch noch keinen Lokalisierer gefunden, welcher mit gefällt und probiere seit 'ner ganzen Weile immer mal verschiedene Methoden aus. > bei meinem ![]() > und aktuell eim Manifest-Creator wird zur Laufzeit durch die Form interirrt und da über eine XML ersatzstings gesucht, wärend Strings im Programm ebenfalls aus der XML ausgelesen werden. (bei beidem hab ich aber noch nichts, welches erstmal automatisch eine String-/Wortliste aus dem Programm erstellt, so daß man sich die übersetzen Komponenten selber anlegen muß.) Aber ganz im Ernst, Lingus hab ich irgendwie übersehn ... also k.A. wie das ist. PS: Hatte Sakura nicht auch einen Lokalisierer? |
Re: Localizer für Delphi-Programme
Zitat:
Zitat:
Zitat:
Zitat:
|
Re: Localizer für Delphi-Programme
Nja, mal sehn, wie es damit aussieht.
Aktuell reicht mir mein eigenes System, welches sich hier so langsam die letzen Jahre entwickelt, auch wenn ich noch keinen Editor hab, aber so oft brauch ich sowas noch nicht. Aber Lingus sieht schonmal nicht schlecht aus. Jup, das von Sakura (hatte ich es mir also richtig gemerkt :) ) liegt wohl wirklich auf Eis ... nichtmal das Setup läuft richtig, also vorallem das optionale Video fehlt. |
Re: Localizer für Delphi-Programme
Hallo,
RTTI und Delphi bei Google [google]+rtti +delphi[/google] Erster Treffer bei ![]() Habe vor Jahr und Tag mal eine RTTI-Komponente geschrieben, die mir zur Laufzeit alle Captions, Hints, Shortcuts... einer Anwendung rekursiv ausliest und in eine INI-Datei schreibt. Die kann man dann kopieren und "übersetzen". Über ein Menü kann man sich dann die seiner Sprache entsprechende INI-Datei auswählen, die wird dann über RTTI eingelesen und alle Captions, Hints und Shortcuts... werden im Programm entsprechend gesetzt. Natürlich merkt sich das Programm die zuletzt genutzte INI-Datei und startet beim nächsten Mal mit der zuletzt ausgewählten Sprache. Die Komponente braucht man genau einmal, bindet sie in alle Programme ein und wer seine eigene Sprache für ein Programm haben will, der kann sich seine individuelle INI-Datei erstellen, übersetzen.... Damit spar' ich mir dann auch das Übersetzen, die Texte können jederzeit angepasst werden, ohne dass man nochmal an's Programm ranmuss. Statt INI-Dateien könnte man natürlich auch XML nehmen, aber INI-Dateien haben den Vorteil, dass Notepad zum "Übersetzen" ausreicht. Die Idee kam mir, als mir mal jemand eine DOT für Word auf Bayrisch gab, und nun alles in Word auf Bayrisch beschriftet war. |
Re: Localizer für Delphi-Programme
Zitat:
(drum konnte ich bis jetzt mein diesbezügliches himXML-Addon auch noch ohne so einen schönen Spracheneditor verwenden :angel2: ) |
Re: Localizer für Delphi-Programme
Zitat:
|
Re: Localizer für Delphi-Programme
Zitat:
Code:
Das ist der Auszug aus so einer INI-Datei. Das dürfte für den Laien deutlich einfacher zu "Übersetzen" sein, als eine entsprechende XML-Datei.
fmMain.acNew.Caption=Neu
fmMain.acNew.HelpKeyword= fmMain.acNew.HelpContext=1020 fmMain.acNew.HelpType=0 fmMain.acNew.ShortCut=16462 fmMain.acNew.Hint=Neue Datei erstellen. fmMain.acOpen.Caption=Öffnen fmMain.acOpen.HelpKeyword= fmMain.acOpen.HelpContext=1021 fmMain.acOpen.HelpType=0 fmMain.acOpen.ShortCut=16463 fmMain.acOpen.Hint=Datei öffnen. fmMain.acSave.Caption=Speichern fmMain.acSave.HelpKeyword= fmMain.acSave.HelpContext=1022 fmMain.acSave.HelpType=0 fmMain.acSave.ShortCut=16467 fmMain.acSave.Hint=Datei im aktuellen Editor speichern. fmMain.acSaveAs.Caption=Speichern unter fmMain.acSaveAs.HelpKeyword= fmMain.acSaveAs.HelpContext=1023 fmMain.acSaveAs.HelpType=0 fmMain.acSaveAs.ShortCut=16469 fmMain.acSaveAs.Hint=Datei unter anderem Namen speichern. fmMain.acSaveAll.Caption=alles speichern fmMain.acSaveAll.HelpKeyword= fmMain.acSaveAll.HelpContext=1024 fmMain.acSaveAll.HelpType=0 fmMain.acSaveAll.ShortCut=0 fmMain.acSaveAll.Hint=Alle geöffneten Dateien speichern. fmMain.acClose.Caption=Ende fmMain.acClose.HelpKeyword= fmMain.acClose.HelpContext=1025 fmMain.acClose.HelpType=0 fmMain.acClose.ShortCut=32856 fmMain.acClose.Hint=Beenden des Programmes. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:47 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz