Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как правильно создавать локализованные ресурсы в консоли, без использования IDE и msbuild. / 2 сообщений из 2, страница 1 из 1
17.03.2015, 18:32
    #38907460
Compositum
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно создавать локализованные ресурсы в консоли, без использования IDE и msbuild.
Доброго времени суток.

Windows 7 x64 Enu\Rus.

Как правильно создавать локализованные ресурсы в консоли, без использования IDE и msbuild.exe? Т.е. как сделать это, ограничившись использованием лишь базовых инструментов, таких как csc.exe, al.exe, resgen.exe (но не msbuild.exe). Например, я текстовый ресурсный файл превращаю в ресурс следующей командой (в составе моего BAT-файла):

Код: sql
1.
"%WinSDK%\resgen.exe" %srcDir%\my-resources.restext %resFileName%



Затем успешно выполняю его компоновку с некоторым моим модулем:

Код: sql
1.
"%net35%\csc.exe" /t:module /out:%moduleName% /resource:%resFileName% %srcDir%\tools.cs


Затем этот модуль подключаю к своему результирующему exe-файлу. Всё успешно работает - строки благополучно читаются из ресурсов. Однако теперь я хочу, чтобы в моём проекте присутствовали как ресурсы по умолчанию, так и локализованные (ru-RU) ресурсы. Как это сделать в IDE MSVS я знаю, но мне интересно, как это сделать вручную в консоли? Более подробно свой вопрос, вместе и исходниками "Hello, World!" я изложил здесь (на тот случай, если это будет более понятным).

Спасибо.
С уважением, Андрей.
...
Рейтинг: 0 / 0
25.03.2015, 06:23
    #38915855
bazile
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как правильно создавать локализованные ресурсы в консоли, без использования IDE и msbuild.
Compositum, имя сателитной сборки должно быть ИмяСборки.resources.dll и порядок компиляции должен быть немного другой. Вот исправленный build.bat:
Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
:: build.bat
:: (c) Andrey Bushman, 2015.
:: This is a sample of building some project manually, without MSVS IDE GUI and 
:: without msbuild. Created default and localized cultures
:: The %net35% is a Windows-variable.
:: On my computer its value is the "C:\Windows\Microsoft.NET\Framework64\v3.5".

:: variables definition
set WinSDK=C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin
set outputDir=.\bin
set culture=ru-RU
set resDir=.\bin\%culture%
set srcDir=.\src
set resFileName=%outputDir%\my-resources.resources
set resFileName2=%resDir%\my-resources.ru-RU.resources
set resFileName3=%resDir%\app.resources.dll
set moduleName=%outputDir%\tools.netmodule
set exeFileName=%outputDir%\app.exe
set net35=C:\Windows\Microsoft.NET\Framework\v3.5

:: create an output directories if not exist
if not exist %outputDir% md %outputDir%
if not exist %resDir% md %resDir%

:: clear an output directory, if it is not empty
del /S /Q %outputDir%\*.*

:: create the default (as I expect) resource file based on our text-file. 
:: This resource will be embadded.
"%WinSDK%\resgen.exe" %srcDir%\my-resources.restext %resFileName%

:: create the localized resource file based on our text-file. This resource will
:: be embadded into the empty localized DLL.
"%WinSDK%\resgen.exe" %srcDir%\my-resources.%culture%.restext %resFileName2%

"%net35%\csc.exe" /t:exe /out:%exeFileName% /resource:%resFileName% %srcDir%\program.cs %srcDir%\tools.cs
"%WinSDK%\al.exe" /t:library /out:%resFileName3% /culture:%culture% /embed:%resFileName2% /template:%exeFileName%

:: delete resource file since it is not necessary already
del /S /Q %resFileName%


P.S. Вопрос ты мастерски задал конечно. sql.ru ссылается на stackoveflow который ссылается на сайт с аттачментом который нельзя скачать.
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Как правильно создавать локализованные ресурсы в консоли, без использования IDE и msbuild. / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]