SharpDevelop - как встроить, скомпилировать exe файл со сборками dll?

Я разрабатываю проект net compact framework в sharpdevelop 3.2. Он отлично работает, но должны быть DLL, такие как сетевой провайдер firebird и другие сборки, которые я использую, внутри папки с exe, когда я его запускаю. Как встроить все эти dll в exe, чтобы они были встроены в один файл exe и не нужно копировать и вставлять их отдельно в папку, из которой я запускаю exe?


person user3762355    schedule 21.06.2014    source источник
comment
или мне просто нужно использовать ilmerge?   -  person user3762355    schedule 21.06.2014


Ответы (1)


Метод, который я использую чаще всего для такого рода вещей, - это добавить сборки в EXE в качестве ресурсов, а затем добавить обработчик для _ 1_, чтобы распаковать сборку из ресурса в память и загрузить оттуда.

Приятная часть использования AssemblyResolve заключается в том, что при необходимости вы можете переопределить сборки с привязкой к ресурсам реальной сборкой на диске, поскольку он не будет вызывать AssemblyResolve, пока не сможет найти сборку обычными средствами. Если вы предпочитаете, чтобы он всегда загружал ресурс, перехватите AssemblyLoad < / a> вместо этого.

Вы также можете сжать ресурсы, чтобы уменьшить раздувание, сэкономив на общем количестве развернутых байтов.

person Corey    schedule 21.06.2014