Мне не удалось объединить сборки wpf с помощью ILMerge.
Есть ли бесплатная программа, которая объединяет сборки (например, ILMerge), но работает с wpf?
Ответы (3)
Я полагаю, что основная проблема, с которой вы сталкиваетесь при объединении сборок WPF, заключается в том, что PackURI для ресурсов не изменяются.
Если вы можете преобразовать свои ресурсы в единую сборку, которая не объединена, или иным образом исправить PackURI в ваших сборках, ваши объединенные сборки должны работать.
Страница ILMerge Майка Барнетта по адресу http://research.microsoft.com/en-us/people/mbarnett/ilmerge.aspx ссылается на заметку Джеффри Рихтера:
В этом разделе обсуждается, как встроить зависимые библиотеки DLL вашего приложения в ваш EXE-файл, упрощая развертывание, позволяя вам распространять только один физический файл.
По сути, вы связываете свои зависимые библиотеки DLL в качестве ресурсов с вашим EXE и загружаете их по требованию, перехватывая событие ResolveAssembly
вашего AppDomain.
Я не знаю, почему у ILMerge проблемы с сборками WPF, но есть еще один инструмент для упаковки и объединения сборок. Взгляните на .NETZ.