Создание ресурсов dll из .resx для приложений. NET Core 3.1 - PullRequest
0 голосов
/ 23 марта 2020

Это мой первый пост здесь, поэтому я надеюсь, что я все сделаю правильно.

Я работаю в компании, которая разрабатывает. NET Базовое приложение внутри Windows, используя c# и VS 2019. Я использую версию. NET Core 3.1. Visual studio обновлена ​​до последней версии (14.5).

Мы уже написали весь пользовательский интерфейс, и нам было интересно, есть ли способ сгенерировать из файла resx связанную DLL локализации.

Это может быть полезно для переводчика по всей Европе, чтобы локализовать приложение и проверить результат внутри приложения.

Я искал способ сделать это (сгенерировать dll из resx) для нескольких дней, не имея возможности правильно найти способ успешно сгенерировать эту DLL из файла resx, созданного VS. Что я пробовал до сих пор:

  1. Использование Resgen и al.exe с несколькими параметрами и их комбинацией. Я получил результат, что DLL была сгенерирована, но не загружена из приложения
  2. Используя cs c .exe с входным файлом для перевода resx. В результате я получил dll, который не был загружен из приложения
  3. Попробуйте другую версию do tnet SDK, вызывая "do tnet cs c .dll" из папок SDK, не имея возможности для генерации действительной dll, загруженной из приложения

Мой вопрос сейчас таков: есть ли способ создать не изнутри VS временную dll, которую можно загрузить с компьютера-переводчика для тестирования приложения или Единственный способ - получить от него файл resx, а затем сгенерировать на компьютере разработчика dll и вернуть переводчику, чтобы он был должным образом протестирован? Если нет, есть ли способ сгенерировать dll, созданный с помощью Resx, из VS Community, не имея всего исходного кода (как вы можете себе представить, мы не хотим распространять наш исходный код)? Любые другие идеи о том, как мы можем решить эту проблему?

Еще одна идея, которая пришла нам в голову, - создать отдельный ресурсный проект и распространить его среди наших переводчиков. Я думаю, что попробую этот путь во второй половине дня, если другие полезные идеи не появятся здесь.

Заранее спасибо за любой ответ на этот пост.

1 Ответ

0 голосов
/ 25 марта 2020

Вы можете использовать два метода

1) RegGen + Assembly Linker

Используйте ResGen.exe для компиляции локализованных файлов .resx в .resources. Затем используйте AL.exe, чтобы связать спутниковую сборку. файл

или

2) Используйте Visual Studio.

Просто добавьте локализованный файл .resx в файл csproj. В следующий раз, когда вы соберетесь, Visual Studio также создаст спутниковые сборки.

Прежде чем вы сможете создавать спутники, вам нужно иметь локализованные файлы .resx. Используйте инструмент локализации, чтобы создать их. Например Soluling .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...