Localizing: LangRessource Dateien in .NET EXE injizieren.

Christian Kusmanow

Erfahrenes Mitglied
Hallo Tutorialer!

Ich es möglich LangRessource Dateien mit die .NET exe zu injizieren?
Diese liegen ja lose mit im Programmordner, in dem Ordner der jeweiligen Sprache.

Wenn das geht, wo finde ich Infos dazu? :confused:

Es gibt ein nettes Tutorial auf TheCodeProject der das injizieren von ManifestDateien beschreibt. :)
Dafür wird die Funktion kernel32.UpdateRessource( [...] ) verwendet.
Gibt es da evtl einen Ressource Type der das zulässt?
Ich komm nicht weiter. :(

MfG, cosmo
 

Norbert Eder

Erfahrenes Mitglied
Wieso baust du dir nicht einfach deine eigenen Language Files (zB als XML), einen Translator dazu und stopfst sie als Ressourcen in deine Anwendung?

Nachteil: Um Language-Files zu adaptieren muss die Anwendung neu erstellt werden (nicht ganz, aber der Einfachheit halber kommt man fast nicht drum rum).

Vorteil: Problem gelöst und man hats selber in der Hand.
 

Christian Kusmanow

Erfahrenes Mitglied
Hallo Norbert!

Hmm, das ist ne Möglichkeit. Nur ist mir mir das viel zu händisch. :-(
Ok, Dialogtexte werden sowieso händisch erstellt.
Aber was ist mit den Bezeichnern von Steuerelementen,
die man in der IDE sprachspezifisch über den Designer ändern kann? :rolleyes:
Soll ich zur Entwicklungszeit mit nackigen Steuerelementen rumhantieren
und mir die Beschriftungen dazudenken? :D

Oder denk ich jetzt zu kompliziert? :confused:

lg, cosmo
 

zioProduct

Erfahrenes Mitglied
Hmm, bei meiner Grundlage besteht ne zusätliche Referenz, welche mir die Sprachumstellung vereinfacht. So hab ich bei den Options der Steuerelemente eine Funktion (Is multiLanguage) welche ich auf TrueSetzten kann. Beim Programmstart setzt ich dann die Sprache mit:
this.CurrentLanguage = Firma.SystemDll.Globalization.FirmaGlobalizationSettings.eLanguage.en (en = english )

Ich glaube das wär in etwas das was du willst :D Also ist es möglich, aber wenn du genaue infos dazu willst müsste ich den Code etc durchsuchen, wie sie das Angestellt haben, das ich es so "mehr oder weniger bequem" habe. ;-]

Mfg
ziop
 

Christian Kusmanow

Erfahrenes Mitglied
Ziop, es ist schon alles übersetzt (!)
Beim Start frage ich die aktuelle SystemSprache ab
und dementsprechend werden die Texte der Controls gesetzt.
Für unbekannte Sprachen wird standart Englisch ausgewählt.
Und während der Laufzeit des Programms, kann auch die ProgrammSprache einfach umschalten.

Es gehört schon ein bissel mehr dazu als das, was Du da gepostet hast. :-( :rolleyes: :p

lg, cosmo
 

zioProduct

Erfahrenes Mitglied
Wiso? Das was du da gerade geschrieben hast, sag ich ja? Du hast die verschiedenen Sprachen schon vorgegebn willst aber beim start oder beim laufenden Programm per auswahl die sprache des laufenden Progs umstellen, das Bezeichnungen etc neu gesetzt werden. Und sonst hab ich dich jetzt 2 mal Falsch verstanden :(
 

Christian Kusmanow

Erfahrenes Mitglied
Meine Frage war:
cosmo hat gesagt.:
Ich es möglich LangRessource Dateien mit die .NET exe zu injizieren?
Diese liegen ja lose mit im Programmordner, in dem Ordner der jeweiligen Sprache.
und nicht
"Wie stell ich die Sprache in meinem lokalisierten Programm um?" ;)

Ich bin bereits bei'm Releasen (!)
 

zioProduct

Erfahrenes Mitglied
Ok, verlesen :) Aber dann ne Frage, wiso erstellte denn keine DLL dafür? Oder packst sie zu ner anderen DLL? Ich nehm an du machst doch auch n Setup von deinem Proggi, also wäre das doch am einfachsten oder? Ansonsten halt ich besser den Mund, das wird mir zu Fortgeschritten :rolleyes:
 

Christian Kusmanow

Erfahrenes Mitglied
zioProduct hat gesagt.:
Ok, verlesen :) Aber dann ne Frage, wiso erstellte denn keine DLL dafür? Oder packst sie zu ner anderen DLL? Ich nehm an du machst doch auch n Setup von deinem Proggi, also wäre das doch am einfachsten oder? Ansonsten halt ich besser den Mund, das wird mir zu Fortgeschritten :rolleyes:
Meiner, es werden doch bereits schon DLL`s mit den Ressourcen erstellt. :rolleyes:
Da ich aber schon alle nötigen Ubersetzungen habe, ist es nicht nötig,
weitere DLL`s mit weiteren Übersetzungen durch ein Update anzubieten,
wie es ja normalerweise der Fall ist.
( Diese werden einfach in die entsprechenden Ordner ( OrdnerName == LangCode ) kopiert. )

Daher wollte ich einen Weg finden, alles schön sauber zusammen zu fassen,
damit ich das Hauptprogram letztendlich in einem ganzen Teil habe. ;-] ;-)
 

zioProduct

Erfahrenes Mitglied
Updates kommen doch auch mit nem Setup-Proggi :) schon gut schon gut bin still, obwohl ich dein Problem immer noch nicht sehe :D
Aber musst nimmer antworten, spar dir die Zeit :D