octobre
2010
Dans un projet c# sous Visual Studio 2010 j’ai des fichiers resx pour la localisation.
Dans mon projet si je crée 2 fichiers resx (resource.resx et resource.fr.resx), les ressources du fichier resource.resx sont incluses dans l’exe et VS crée un dossier fr contenant une dll nomduprojet.resource.dll.
A l’exécution, les textes du fichier resource.fr.resx s’affichent.
Tout va bien.
Maintenant je vois faire traduire le fichier resource.resx en plusiseurs langues et je veux générer les dlls pour chaque culture sans passer par visual studio et donc sans avoir a recompiler toute la solution.
Pour cela j’utilise les exe ResGen.exe et Al.exe
Et la ca ne marche plus.
La dll générée est différente de celle générée par VS et a l’exécution, les textes du fichier resource.resx s’affichent à la place du fichier resource.fr.resx.
Après plusieurs heures de recherches sur internet, tout monde semble dire que ce que je fais est correct.
Je n’ai trouvé personne pour dire que le fichier « .resources » doit être préfixé par le namespace dans le quel se trouve les fichiers resx
Toutes les explications sont ici :
http://www.michaelalbaladejo.com/post/2010/10/25/Creation-dassemblies-satellites-avec-resgen-exe-al-exe.aspx