Приложение ILMerging для Windows Forms с парой локализаций

Я создал приложение Windows Forms (C#) под названием "Обработка изображений". Он использует много внешних библиотек, поэтому я решил использовать ILMerge, чтобы объединить их в один исполняемый файл, и это сработало. Но сегодня я локализовал свое приложение. После сборки у меня было 3 новые папки в папке Debug: "en-US", "ru-RU", "uk-UA" с одной dll с тем же именем "ImageProcessing.resources.dll". Поэтому я включил их все в команду ILMerge:

ILMerge.exe /t:winexe /out:ImageProcessingRelease.exe ImageProcessing.exe AForge.dll AForge.Imaging.dll AForge.Math.dll DevExpress.Data.v10.2.dll DevExpress.Utils.v10.2.dll DevExpress.XtraBars.v10.2.dll DevExpress.XtraEditors.v10.2.dll FreeImageNET.dll uk-UA\ImageProcessing.resources.dll ru-RU\ImageProcessing.resources.dll en-US\ImageProcessing.resources.dll

Моя программа хранит языковой стандарт в настройках. После слияния я не могу сменить язык, но настройки меняются.

Я не знаю, что еще я могу включить сюда для более подробной информации, так что скажите мне, пожалуйста, что.

1 ответ

Решение

Ответ прост. ILMerge в этом случае не подходит, так как.NET Framework полагается на структуру папок, чтобы определить, какой файл ресурсов использовать.

Бессмысленно объединять сборки таким способом, и лицензия конечного пользователя какого-либо стороннего поставщика сборок не позволяет вам объединять их продукт с вашими собственными сборками.

Другие вопросы по тегам