Взгляните на <забастовку> Thinstall забастовка> ThinApp
Можно добавить DLLs как двоичные ресурсы в EXE. При запуске Ваш EXE может затем извлечь ресурсы во временную папку, и LoadLibrary()
получающийся DLLs.
Если исполняемый файл статически связывается с DLL, т.е. нет никаких вызовов к LoadLibrary
, то я не думаю, что существуют любые механизмы для упаковки DLL в исполняемый файл, так как загрузка DLL сделана загрузчиком приложения ОС до "основной" вызванной функции. Единственный путь вокруг этого насколько я знаю, состоит в том, чтобы поместить exe и dlls в другой exe. Эта обертка exe распаковывает реальный exe и dlls во временную папку и запускает exe, удаляя файлы, когда exe выходит.
, Если Вы звоните LoadLibrary/Ex
для загрузки dll, извлеките dll от exe ресурсов до файла до вызова к LoadLibrary/Ex
.
настоящая проблема состоит в том, что эти LoadLibrary
функция приводит в порядок большую фиксацию адресов, когда библиотека загружается и только работает при загрузке из файла.
Вы посмотрели на мой дешево-служебный список?
Там предположил, чтобы быть несколькими недорогими (т.е. довольно дешевый) инструменты, которые соединят 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
MoleBox Pro делает точно, что Вы хотите, но это - условно-бесплатное программное обеспечение, и, если Вы не купите полную версию, упакованные исполняемые файлы покажут Диалоговое окно при запуске, говоря, что что-то как "Этот файл было упаковано пробной версией MoleBox, не распределяйте его",
Вы можете антенный спуск это здесь: ссылка
, К сожалению, я не мог найти полностью удовлетворяющее и бесплатное решение
Мне сказали, что возможно попросить, чтобы общий объект связаться с другим общим объектом таким образом объединил их в одного в Linux
, Но это не будет работать на собственный компонент Windows dlls, одна вещь происходит со мной, мы можем просто использовать компоновщика для соединения всего objs, независимо от которого проекта они принадлежат первоначально. Конечно, у них должны быть подобные опции ссылки.