Упаковка exe + dll в один исполняемый файл (не.NET) [дубликат]

31
задан Community 23 May 2017 в 12:31
поделиться

7 ответов

Взгляните на <забастовку> Thinstall ThinApp

5
ответ дан 27 November 2019 в 22:49
поделиться

Можно добавить DLLs как двоичные ресурсы в EXE. При запуске Ваш EXE может затем извлечь ресурсы во временную папку, и LoadLibrary() получающийся DLLs.

1
ответ дан 27 November 2019 в 22:49
поделиться

Если исполняемый файл статически связывается с DLL, т.е. нет никаких вызовов к LoadLibrary, то я не думаю, что существуют любые механизмы для упаковки DLL в исполняемый файл, так как загрузка DLL сделана загрузчиком приложения ОС до "основной" вызванной функции. Единственный путь вокруг этого насколько я знаю, состоит в том, чтобы поместить exe и dlls в другой exe. Эта обертка exe распаковывает реальный exe и dlls во временную папку и запускает exe, удаляя файлы, когда exe выходит.

, Если Вы звоните LoadLibrary/Ex для загрузки dll, извлеките dll от exe ресурсов до файла до вызова к LoadLibrary/Ex.

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

4
ответ дан 27 November 2019 в 22:49
поделиться

Вы посмотрели на мой дешево-служебный список?

Там предположил, чтобы быть несколькими недорогими (т.е. довольно дешевый) инструменты, которые соединят DLL несетевого приложения, такой как:

1.) Molebox Pro (eu 100) 2.) Fusion BitArt (160$) 3.) Обертка VB (100$) 4.) Пакет PE (30$)

Кроме того, по "www.oreans.com" Вы могли бы найти ориентированный на защиту пакет программы для eu 320, который, как они утверждают, может связать или Win32 или файлы ".NET" вместе; однако, когда я попросил у них определенного scenarion, где я буду использовать их "XBundler Для Win32/.NET", чтобы упаковать ".Net" EXE и затем попытался бы выполнить его на Windos 98 (без платформы), они сказали, что он не будет работать.:-(

Поклонник EXE

1
ответ дан 27 November 2019 в 22:49
поделиться

MoleBox Pro делает точно, что Вы хотите, но это - условно-бесплатное программное обеспечение, и, если Вы не купите полную версию, упакованные исполняемые файлы покажут Диалоговое окно при запуске, говоря, что что-то как "Этот файл было упаковано пробной версией MoleBox, не распределяйте его",

Вы можете антенный спуск это здесь: ссылка

, К сожалению, я не мог найти полностью удовлетворяющее и бесплатное решение

0
ответ дан 27 November 2019 в 22:49
поделиться

Мне сказали, что возможно попросить, чтобы общий объект связаться с другим общим объектом таким образом объединил их в одного в Linux

, Но это не будет работать на собственный компонент Windows dlls, одна вещь происходит со мной, мы можем просто использовать компоновщика для соединения всего objs, независимо от которого проекта они принадлежат первоначально. Конечно, у них должны быть подобные опции ссылки.

0
ответ дан 27 November 2019 в 22:49
поделиться

Взгляните на BoxedApp . Удачи!

6
ответ дан 27 November 2019 в 22:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: