Страница: 1 |
Всем привет и всем вопрос :) Есть у меня файл ресурсов с тремя таблицами, в которых содержится набор записейна трех языках - английском, русском и украинском. При запуске проги из среды разработки выбор языка из файла ресурсов в зависимости от региональных настроек происходит корректно. Но при запуске уже откомпиленной программы независимо от рег. настроек у меня всегда загружается англоязычная версия. Если кто-то занимался локализации прог на ВБ с испльзованием файла ресурсов, подскажите, плиз, где грабли. Не против буду послушать об альтернативных вариантах обеспечения локализации приложений. С ув., Андрей
Использование нескольких таблиц ресур файла неудобно и в большенстве случаев не работает как положено. Альтернативное решение. Использовать одну таблицу с BaseIndex для каждого языка. Поясню немного. К примеру выберем BaseIndex для английского 1000, русский - 2000 и украинский - 3000. Запишем значения для каждого контроля с одним и тем же offset в различных языках. Т.е offset для label1 будет 1, тогда значение на английском запишем в 1001, на русском - 2001 и на украинском - 3001. Код чтения значений из ресурс файла одинаков для всех языков. Label1.Caption = LoadResString(BaseIndex + 1) Label2.Caption = LoadResString(BaseIndex + 2) Привет можно для каждого язака иметь сою Res1033.DLL, Res1049.DLL,,, Успехов Страница: 1 |
Вопрос: resource file
Добавлено: 05.11.03 15:45
Автор вопроса: prokhor
Ответы
Всего ответов: 2
Номер ответа: 1
Автор ответа:
boevik
Хранитель чата
ICQ: 137392264
Вопросов: 8
Ответов: 557
Web-сайт:
Профиль | | #1
Добавлено: 05.11.03 16:37
Номер ответа: 2
Автор ответа:
Evard
Вопросов: 14
Ответов: 6
Профиль | | #2
Добавлено: 11.11.03 17:26
каждая из них сосоит из 1 класа и метода LoadString(ID As long)
В основном приложении имеется клас CLocale который и занимается подгрузкой текста из определеной DLL
Эдвард