Локализация проекта без исходников
От: Genius_P Россия  
Дата: 02.12.04 15:47
Оценка:
Имеется проект с поддержкой локализации на базе сборок-сателитов. Исходников к данному проекту нет.
Хотелось бы руссифицировать web-интерфейс.
В каталоге bin лежит файл adminstrings.dll в подкаталоге ja adminstrings.resources.dll
При просмотре файлов ildasm видим

___[MOD] ...\bin\ja\adminstrings.resources.dll
   |      M A N I F E S T
   |___[NSP] AdminStrings
   |   |___[CLS] UIStringManager
   |   |   |     .class public auto ansi 
   |   |   |___[STF] StringResource : public static class [mscorlib]System.Resources.ResourceManager
   |   |   |___[STF] preferredDBCulture : private static string
   |   |   |___[STF] utcOffset : private static int32
   |   |   |___[STM] .cctor : void()
   |   |   |___[MET] .ctor : void()
   |   |   |___[STM] AddDateTimeOffset : valuetype [mscorlib]System.DateTime(valuetype [mscorlib]System.DateTime,valuetype [mscorlib]System.TimeSpan)
   |   |   |___[STM] ClientDateTimeToUtc : valuetype [mscorlib]System.DateTime(valuetype [mscorlib]System.DateTime)
   |   |   |___[STM] GetCultureInfo : void(string,class [mscorlib]System.Globalization.CultureInfo&)
   |   |   |___[STM] GetDefaultTimezoneOffset : string()
   |   |   |___[STM] GetPreferredSpecificCultureFromNeutralCulture : void(class [mscorlib]System.Globalization.CultureInfo&)
   |   |   |___[STM] GetString : string(string)
   |   |   |___[STM] GetUserCulture : class [mscorlib]System.Globalization.CultureInfo(string[])
   |   |   |___[STM] ServerDateTimeToClientDateTime : valuetype [mscorlib]System.DateTime(valuetype [mscorlib]System.DateTime)
   |   |   |___[STM] SetUserCulture : class [mscorlib]System.Globalization.CultureInfo(string[],string)
   |   |   |___[STM] SetUtcOffset : void(string)
   |   |   |___[STM] UserCultureSupported : bool(class [mscorlib]System.Globalization.CultureInfo)
   |   |   |___[STM] UtcToClientDateTime : valuetype [mscorlib]System.DateTime(valuetype [mscorlib]System.DateTime)
   |   |   |___[STM] get_PreferredDBCulture : string()
   |   |   |___[STM] get_UtcOffset : int32()
   |   |   |___[STM] set_PreferredDBCulture : void(string)
   |   |   |___[STM] set_UtcOffset : void(int32)
   |   |   |___[PTY] PreferredDBCulture : string()
   |   |   |___[PTY] UtcOffset : int32()
   |   |
   |
   |___[CLS] <PrivateImplementationDetails>
   |   |     .class private auto ansi 
   |   |___[STF] $$method0x6000008-1 : static assembly class [mscorlib]System.Collections.Hashtable
   |


Пытаюсь сделать свой сателит:
1. с помощью Resource Editor 1.2 for VS открывают ресурсы из adminstrings.dll и произвожу их перевод
2. Через resgen.exe компилю исправленные ресурсы
3. Далее как написано в Creating Satellite Assemblies генерирую сателит

c:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\al.exe /t:lib /embed:adminstrings.ru-RU.resources  /culture:ru-RU /out:adminstrings.resources.dll /template:adminstrings.dll


4. кладу полученый сателит в каталог ru-RU в папке bin

Результат приложение так и работает используя английские ресурсы, при просотре через ildasm сателита он показывате только манифест и все.

Вопросы: Я что-то делаю не правильно? Приложение не предлагает выбирать язык, на чем оно основывается когда его выбирает (на каких Именно настройка ОС)?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.