Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D

Ответ
 
Опции темы
Старый 01.02.2012, 20:49   #1
Okay
Знающий
 
Регистрация: 21.11.2011
Сообщений: 284
Написано 17 полезных сообщений
(для 74 пользователей)
вшить DLL in EXE

Не могу вспомнить как вшивать DLL in EXE. Помню программу OllyDBG
(Offline)
 
Ответить с цитированием
Старый 01.02.2012, 21:01   #2
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: вшить DLL in EXE

Никак. DLL по определению является динамически компонуемым модулем (загружаться он, тем не менее, может и статически [decls-файл] и динамически [CallDLL, обратите внимание на соглашения вызова]). Далее для Си\Си++: Для компоновки воедино объектных модулей вашего кода и сторонней библиотеки, последняя должна быть представлена файлом "объектной библиотеки" (obj-файл). Объектная библиотека отличается от библиотеки импорта (тоже obj-файла), используемой при статической загрузке DLL, наличием кода тел, экспортируемых функций.
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием
Старый 02.02.2012, 02:09   #3
IGR
Blitz's Shame !!
 
Регистрация: 31.03.2007
Сообщений: 3,639
Написано 832 полезных сообщений
(для 2,013 пользователей)
Ответ: вшить DLL in EXE

незнал незнал и забыл !!
(Offline)
 
Ответить с цитированием
Эти 4 пользователя(ей) сказали Спасибо IGR за это полезное сообщение:
Артем Валерьевич (02.02.2012), ARA (02.02.2012), LLI.T.A.L.K.E.R. (13.03.2012), Reks888 (02.02.2012)
Старый 02.02.2012, 02:19   #4
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: вшить DLL in EXE

как-нибудь в виде ресурса дллку может вклеить (типа как ярлычки там всякие внутри хранят), потом её экстрактить оттуда в отдельный файл, а потом подключать, разве что. но это бессмысленный изврат.
(Offline)
 
Ответить с цитированием
Старый 02.02.2012, 15:42   #5
L.D.M.T.
Бывалый
 
Аватар для L.D.M.T.
 
Регистрация: 10.06.2006
Сообщений: 808
Написано 354 полезных сообщений
(для 832 пользователей)
Ответ: вшить DLL in EXE

molebox тебе в помощь!
__________________
Per Aspera Ad Astra...
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
impersonalis (02.02.2012)
Старый 02.02.2012, 16:06   #6
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: вшить DLL in EXE

а вот это кстати странно, что нельзя какой либо модуль мапить прямо из памяти в память. вообще хорошие библиотеки умеют линковаться статически
(Offline)
 
Ответить с цитированием
Старый 02.02.2012, 18:10   #7
Платон Александрович
Нуждающийся
 
Аватар для Платон Александрович
 
Регистрация: 05.10.2011
Адрес: Россия, Южно-Сахалинск
Сообщений: 66
Написано 42 полезных сообщений
(для 83 пользователей)
Ответ: вшить DLL in EXE

Сообщение от HolyDel Посмотреть сообщение
а вот это кстати странно, что нельзя какой либо модуль мапить прямо из памяти в память.
DLL можно загрузить из памяти, так-же как это делает системный загрузчик. Т.е. разобрать PE заголовок, выделить память под образ, скопировать секции, скорректировать смещения если нужно, обработать таблицу импорта, выставить необходимые аттрибуты памяти у секций и т.д.
Но из блица это сделать невозможно из-за отсутствия работы с указателями. А писать для этого библиотеку как-то странно, библиотеку для загрузки библиотек

Хотя автору наверное все-таки надо упаковка ехешника (и соответственно используемых библиотек), поэтому +1 к molebox, а еще можно заюзать упаковщик Максима, правда я не помню умеет-ли его упаковщик длл грузить.
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо Платон Александрович за это полезное сообщение:
impersonalis (02.02.2012), tirarex (05.02.2012)
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 17:29.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com