c# – How to insert localization resources into an executable assembly?

Question:

Hi people! I am making an application on windows forms (.NET Framework 4.6). I needed to do some localization. I did as stated here . After compilation, folders with the names of languages ​​("ru" and "en") appear, in which the <ProjectName>.resources.dll files are located. But I need everything to be in one executable. If they are not there, then only the system language is present. AssemblyResolve is not called, so adding them to resources and loading them when necessary will not work. Is there any way to solve this issue or is it easier to make your own localization?

Answer:

After a more careful study of the issue, it turned out that it would not work to use standard globalization tools and not use accompanying assemblies, this is embedded in the default platform resource model.

Details:
Packaging and Deploying Resources in Desktop Applications
Practical guide. Create a localized version of a resource file
Walkthrough. Localizing Windows Forms

In this case, if you are not satisfied with the standard resource model and you need support for different languages ​​in one assembly, you will have to build something of your own.

Scroll to Top