You want to know how to use satellite assemblies to hold the strings and other resources (images, sound files, etc.) that your program uses.
Mark satellite assemblies with the AssemblyCulture attribute.
Satellite assemblies should contain no code, and their names should include .resources. For example, MyUtil.resources.dll for an app with the main assembly called MyUtil.dll.
// Add the following entry to the AssemblyInfo.cs file. [assembly: AssemblyCulture("fr-FR")] // Code in the main app to retrieve the resources. string resourcesFile = "TestAutomation.UiStrings"; ResourceManager resources = new ResourceManager(resourcesFile, Assembly.GetExecutingAssembly()); string message = resources.GetString("Message"); /* Here's an additional way to retrieve a resource for a specific culture: ** Pass a CultureInfo object to the GetString method of the ResourceManager class. */ CultureInfo frCi = new CultureInfo("es-ES"); string greetings = resources.GetString("Message", frCi); // Apply the usage of French resources. Thread.CurrentThread.CurrentUICulture = new CultureInfo("fr-FR");