Основой многоязычного приложения для Windows является использование «ресурсов». ресурс - это блок, добавляемый в конце вашего исполняемого файла, который содержит только данные и отформатирован очень специфическим образом, чтобы Windows могла интерпретировать эти данные.
в ваших ресурсах вы можете найти диалоговые окна, строковые таблицы, а также информацию о версии (те, которые отображаются в диалоговом окне свойств файла в проводнике). Вы можете наблюдать за ресурсами любой DLL или exe, открыв exe или dll в Visual C ++. при разработке приложения вы можете создать ресурс (File / New), добавить его в свой проект (так же, как вы добавляете файл) и отредактировать ресурсы (используя редактор ресурсов, обычно вкладку рядом с представлением файла). в проводнике проекта).
каждый ресурс (диалог, диалог, шаблон, информация о версии, таблица строк, ...) содержит идентификатор языка, который вы можете изменить. Вы можете создать один и тот же ресурс несколько раз, используя разные языковые идентификаторы. После компиляции приложение загружается Windows и пытается открыть ресурсы, язык которых ближе к языку интерфейса пользователя Windows.
В Windows SDK определен набор функций для эффективного использования этих ресурсов: LoadString, LoadCursor, LoadBitmap и всего, что есть в главе resources .
Теперь каждый раз, когда вы используете строку в своем коде, помещайте ее в ресурс таблицы строк и используйте функцию LoadString для ее получения. окна и диалоговые окна, как правило, загружаются на правильном языке без необходимости какого-либо специального вызова функции, если в ресурсах установлен правильный идентификатор языка.
вуаля, это самое короткое введение в многоязычную разработку под Windows, которое я мог бы сделать. Я уверен, что вы можете найти много хорошо написанных статей о ресурсах или многоязычной разработке под Windows в сети.