Я создал таблицу строк в своем .rc файле, содержащем мои английские строки - теперь я должен добавить другую таблицу строк для другого языка.
Если я пытаюсь сделать:
Добавьте Ресурс...-> Таблица строк-> Новый
Я получаю ошибку: "не может быть больше чем одного экземпляра этого типа".
Я знаю, что могу открыть .rc файл в блокноте и добавить язык там, но как я, предполагают, чтобы сделать это из Visual Studio?
Да, это очень хорошо скрыто. Дважды щелкните файл .rc в исследовании решений, чтобы открыть окно просматривать ресурсы. Разверните узловой узел String Table, щелкните правой кнопкой мыши «String Table» и выберите «Вставить копию». Это приведет вас к выбору языка комбо.
В конце концов, может быть только один. (простите, я не смог устоять).
Это позволит вам добавить таблицу, если она не на том же языке, что и текущая таблица, Попробуйте изменить язык текущей строковой таблицы на что-нибудь другое, может быть "баскское", затем добавьте новую таблицу и измените ее обратно.
Как упоминалось в nobugz, у вас может быть только одна таблица строк для каждого языка.
Но вернемся к более широкой картине: считается плохой практикой хранить несколько языков в одном исполняемом файле / dll. «Лучшая текущая практика» - иметь библиотеки DLL только для ресурсов, по одной на каждый язык. Тогда у вас будет полный контроль над тем, какой язык загружается (в противном случае вы позволяете Windows принимать решение за вас).
Также обратите внимание на MUI API ( http://msdn.microsoft.com/en-us/goglobal/bb978454.aspx , особенно на раздел «Начало работы» слева)