I have an already localized WinForms program with four languages. It consists of one EXE and several DLL's. All C# projects are contained in one solution. The satellite assemblies are generated automatically from localized resource files, e.g. Strings.fr.resx or MyForm.it.resx.
The source code is stored in Subversion, the centralized (build server) generated binaries in Artifactory. Maven is used for dependency resolution. The corresponding source code for the binaries (snapshot) is also stored in Artifactory. So, both binaries (DLL, EXE) and corresponding source code can be referenced from other projects.
Now, I want to add an additional language to the program without recompilation. The original binaries must not be touched.
The idea is to create an additional solution that depends (Maven) on the original program version. So, I get the binaries and source code. Then I can create tool projects for each original project to create the satellite assemblies, e.g. using a batch file. That will work for projects with localizable text and other things in resource files.
But what about Controls and Forms. Different languages may have different resulting control layouts, line breaks, position changes, sizes etc. It is not only text translation. So, the WinForms designer would be very helpful. Does anybody know a good way to create satellite assemblies containing controls?
Additional tools (e.g. Sisulizer) are not possible. The original binaries are strong named and the key is available only on the build servers. So, the new satellite assembly must be strong named with that key, too.