![]() |
Модераторы: Partizan, gambit |
![]() ![]() ![]() |
|
_Владимир_ |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 12.4.2004 Репутация: нет Всего: нет |
Люди кто-нить занимался локализацией на С#?
Я сделал усе как в MSDN и не находит ресурс ![]() Помогите если кто разбирался! А сделал я так: Пусть Base- базовое имя файла ресурса, C:\Project\MyApp.exe - моя основная сборка 1)Создал Base.txt с моими cтроками ресурсов на инглише 2)сконвертировал (с помощью resgen.exe) файл Base.txt в Base.resx 3)добавил Base.resx в проект - это буде default -ресурс 4)перевел строки с инглиша на рус в файле Base.txt 5)сконвертировал (с помощью resgen.exe) файл Base.txt в Basе.ru.resources 6)поместил файл ресурсов Basе.ru.resources в сателитную сборку MyApp.resources.dll как указано в MSDN: al.exe /t:lib /culture:ru-RU /embed:Basе.ru.resources /out:MyApp.resources.dll 7)поместил сборку MyApp.resources.dll как просят: C:\Project\ru-RU\MyApp.resources.dll 8) ResourceManager ResMngr=new ResourceManager("Base", this.GetType().Assembly); string Str=ResMngr.GetString("Строка1", new CultureInfo("ru-RU")); Ругается: Coud not find any resources appropriate for the specified culture ... А если создаю менеджер так (меняю 1-й параметр): ResourceManager ResMngr=new ResourceManager("MyApp.Base", this.GetType().Assembly); string Str=ResMngr.GetString("Строка1", new CultureInfo("ru-RU")); то строка находится но из ресурса по default СПАСИБО ВСЕМ ЗАРАНЕЕ! |
|||
|
||||
Kurt |
|
|||
Увлеченный ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1662 Регистрация: 22.8.2003 Где: Краснодар Репутация: 20 Всего: 36 |
Занимался локализацией web-страниц, пришел к выводу, что лучше использовать БД, чем ресурсы..
![]() Но и с ресурсами делал работоспособные проги - честно признаюсь, не сам - просто брал примеры из SDK. ![]() У тебя есть SDK? - Там неплохие примеры по ресурсам. Если хошь, можем попробовать разобраться. -------------------- Для корабля, который не знает куда плыть, нет попутного ветра... ((С) Архимед) ... Все знают, что это невозможно. Но случайно находится невежда, который этого не знает. Он-то и делает открытие.. ((С) А. Эйнштейн) |
|||
|
||||
_Владимир_ |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 12.4.2004 Репутация: нет Всего: нет |
Спасибо Kurt!
Я уже разобрался. Проблемма была в следующем. Я работаю в VS7. Среда разработки при компиляции файла расурса Base.resx делает из него не Base.resources а ProjectNamespace.Base.resources. Где ProjectNamespace умолчальное пространство имен для проекта. Таким образом изменяется базовое имя ресурсного файла. Соответственно болжен быть именован и файл ресурсов для са- телитной сбороки ProjectNamespace.Basе.ru.resources. Добавлено @ 11:21 Кстати Kurt а не знаешь как работать с сателитными сборками не на уровне SDK а например из VS7. Создание сателитной сборки, добавление/удаление файлов ресурсов в/из сборку, просмотр ее содержимого. А то делать это с помощью SDK и *.bat файлов крайне неудобно |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |