PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : .NET: Sprachlokalisierung und GlobalAssemblyCache


Elemental
2004-12-07, 20:06:00
Hallo allerseits,
in unsere Firma arbeiten wir an einer Software, die in C# erstellt wurde und in mehrere Sprachen unterstützt. Die Sprachresourcen müssen dafür in entsprechenden Unterverzeichnissen liegen, z.B. de-DE, de, en-US, en usw.

Nun wollen wir einige Assemblies in den GlobalAssemblyCache installieren, damit diese von von anderen Applikationen auch verwendet werden können.
Soweit so gut, aber was passiert mit den Sprachresourcen für die Assemblies? Im GAC gibts ja keine Unterzeichnisse für die Sprachen...

Hat jeman schonmal sowas gemacht oder weiss, was zu tun ist?


Gruss
Bernd

Demirug
2004-12-07, 22:59:42
soweit mir bekannt ist die entsprechenden resource Dateien einfach in den GAC installieren. Dabei wird die Sprache in den Namen für das entsprechenden Unterverzeichniss eingebaut. Intern benutzt der GAC ja auch Unterverzeichnisse nur bekommt man die im Explorer nicht zu sehen.

Elemental
2004-12-09, 14:13:54
Hmm, OK. Ein Problem ist dann wohl nur noch, dass für jeden neuen build auch alle Sprach-DLLs neu gemacht werden müssen.
Bis jetzt haben wir die DLLs nur zum Übersetzen gegeben, wenn sich Text geändert hat.
Aber Sprach-DLLs mit Versionsnummer 39 können z.B. nicht mehr von der Software mit Versionsnummer 40 geladen werden :frown:

Demirug
2004-12-09, 14:24:49
Hmm, OK. Ein Problem ist dann wohl nur noch, dass für jeden neuen build auch alle Sprach-DLLs neu gemacht werden müssen.
Bis jetzt haben wir die DLLs nur zum Übersetzen gegeben, wenn sich Text geändert hat.
Aber Sprach-DLLs mit Versionsnummer 39 können z.B. nicht mehr von der Software mit Versionsnummer 40 geladen werden :frown:

Das kann man umgehen.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbcon/html/vbconversionnumbersformainlocalizedsatelliteassemblies.asp

Elemental
2004-12-10, 08:06:40
Hmm, gut zu wissen, dass sich MS anscheinend auch darüber Gedanken gemacht hat.
Aber wie ist es, wenn meine Applikation keine Resourcen "im Bauch hat". Also beim build wird auch automatisch immer eine aktuelle (deutsche) Resource-DLL erzeugt, welche dann ja auch die aktuelle Buildnummer hat. Die anderen übersetzten Sprachen hätten aber eine alte Buildnummer.
Das kann dann wohl nicht zusammen passen, oder?


Gruss
Bernd