Форум программистов, компьютерный форум, киберфорум
Наши страницы
Visual Studio
Войти
Регистрация
Восстановить пароль
 
ATop
99 / 5 / 6
Регистрация: 06.07.2013
Сообщений: 181
Завершенные тесты: 2
#1

Можно ли собрать в один exe файл не только .NET, но и COM сборки? - Visual Studio

01.09.2016, 20:46. Просмотров 419. Ответов 4
Метки нет (Все метки)

Имеется программа, которой необходимо использовать сторонние COM сборки. Так как в дальнейшем эту программу планируется копировать на несколько компьютеров, таскать за exe файлом эти dll-ки не хочется, а вдруг потеряется, а вдруг глупый пользователь их удалит, пришла идея объединить все файлы в одну сборку. После продолжительного гуляния пробовал объединять файл через ресурсы и через ILMerge. После ILMerge я понял, что она работает только с .NET сборками.
Так вот: возможно ли объединить в один exe файл .net и com сборки?

Добавлено через 8 минут
Варианты с самораспаковывающимися архивами пожалуйста не предлагать.
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.09.2016, 20:46
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Можно ли собрать в один exe файл не только .NET, но и COM сборки? (Visual Studio):

Windows Defender блокирует exe-файл после сборки VS2017
после сборки проекта защитник виндос удаляет exe фаил.. проверял каспером...

Как собрать exe-файл?
Добрый день. Подскажите пожалуйста, как сделать установочный файл? У меня есть...

Можно ли упаковать в exe'шник используемые в проекте библиотеки так, чтобы можно было запустить программу на машине без .NET
Я погуглил, но нашел только очень дорогие программы. А хотелось бы узнать...

Собрать проект в один exe-файл для запуска на XP
Добрый день, уважаемые форумчане. Создал простенький текстовый редактор...

Как собрать все библиотеки в один exe-файл и уменьшить его?
Привет всем! Имеется проект на Python(Код самой программы, GUI и файл которой...

Возможно ли собрать .exe и несколько .dll в один .exe?
Просто написал программку, получилось >6 .dll файлов, с этим ничего нельзя...

4
Rius
Эксперт .NET
4586 / 2884 / 707
Регистрация: 25.05.2015
Сообщений: 8,919
Записей в блоге: 10
Завершенные тесты: 4
01.09.2016, 21:11 #2
Когда программе требуются свои COM, они ставятся инсталлятором вместе с программой и регистрируются в системе.

В Вашем костыле остаются только ресурсы. На форуме такие костыли уже приводились.
+ потребуется регистрация в системе, и наличие всех зависимостей.
0
ATop
99 / 5 / 6
Регистрация: 06.07.2013
Сообщений: 181
Завершенные тесты: 2
01.09.2016, 21:37  [ТС] #3
Я пытался сделать на ресурсах но на сколько я понял у меня праблемма с тем что не создается никаких объектов из внешних сборок, там только статические методы. По гайду на хабре пытался поймать событие AppDomain.AssemblyResolve CLR просто не генерирует исключение о не найденых сборках, пытается выполнить инструкцию, выдает исключение, на этом все кончается.
0
Rius
Эксперт .NET
4586 / 2884 / 707
Регистрация: 25.05.2015
Сообщений: 8,919
Записей в блоге: 10
Завершенные тесты: 4
01.09.2016, 21:40 #4
Лучший ответ Сообщение было отмечено ATop как решение

Решение

В ресурсы можно засунуть любой файл.
Любой файл из ресурсов можно сохранить на диск.
Файл с диска можно зарегистрировать.
Assembly* пригодно для загрузки сборок .Net, а не всего подряд.

Добавлено через 57 секунд
Про сборки: http://www.cyberforum.ru/wpf-silverlight/thread1698198.html
1
ATop
99 / 5 / 6
Регистрация: 06.07.2013
Сообщений: 181
Завершенные тесты: 2
01.09.2016, 21:41  [ТС] #5
Спасибо, наметили направление.
0
01.09.2016, 21:41
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.09.2016, 21:41
Привет! Вот еще темы с решениями:

Собрать папку с файлами и exe в один exe
Здравствуйте! Можно ли как нибудь папку и файлами ( содержимое папки: .gif,...

Собрать в один exe
Здравствуйте! У меня есть приложение (собственно, сам *.exe), dll-ка от...

Проект установки создает два файла: msi и exe. Можно ли сделать один установочный файл?
Здравствуйте. Проект установки создает два файла: msi и exe. Можно ли...

Как можно изменить код программы, если имеем только exe файл?
Вот, допустим, имеем exe файл с таким кодом begin var a,b,c:integer; a:=200;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru