Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.06.2014, 00:59   #1
rafaelka
Пользователь
 
Регистрация: 10.06.2014
Сообщений: 18
По умолчанию Загрузка DLL из интернета, минуя жесткий диск

Собственно сабж... требуется код(либо куды копать), как реализовать подгрузку библиотеки из интернета(при этом сохраняя ее не на жестком диске , а в оперативке(да при каждом запуске софта, перезакачка... Требуется т.к. DLL будут содержать функции для функционирования софта, который будет привязан к железу...
rafaelka вне форума Ответить с цитированием
Старый 10.06.2014, 02:43   #2
doktor255
Заблокирован
 
Регистрация: 31.03.2011
Сообщений: 976
По умолчанию

IdHttp + MemoryStream.
doktor255 вне форума Ответить с цитированием
Старый 10.06.2014, 08:04   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
как реализовать подгрузку библиотеки из интернета
Фигня-вопрос. А знаешь что тебе не удастся? Запустить загруженную библиотеку. Раньше этим занималась технология RPC (http://ru.wikipedia.org/wiki/Rpc) Т.е. не совсем конечно всю либу и не подгружая, но принцип удаленного вызова уже был.
Так что ты хорошенечко подумай - надо оно тебе такое или лучше проект как-то по другому защитить. Например сделать его WEB ориентированным (не имею ввиду создание сайта).
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 10.06.2014, 11:23   #4
rafaelka
Пользователь
 
Регистрация: 10.06.2014
Сообщений: 18
По умолчанию

Да вот в этом и фишка, что вопрос состоит в том как её запустить)
rafaelka вне форума Ответить с цитированием
Старый 10.06.2014, 11:28   #5
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Делать то, что делает загрузчик винды. как это делать, естественно не известно.
по идее надо реверсить системный LoadLibrary и с смотреть что там как работает.
Человек_Борща вне форума Ответить с цитированием
Старый 10.06.2014, 11:47   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
надо реверсить системный LoadLibrary и с смотреть что там как работает.
Круто ты послал автора
Цитата:
rafaelka
Ты можешь объяснить зачем тебе это надебно?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 10.06.2014, 12:45   #7
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Цитата:
Круто ты послал автора
Я указал куда ему копать, только и всего
Надо выделить память, указать права доступа, залить туда этот труп двоичного кода, модифицировать заголовки собственного процесса, таблицырелокаций, таблицы импорта, и только после этого вызвать из себя LoadLibrary чтобы подключть эту библиотеку..

С выгрузкой из памяти ещё больншая свистопляска будет
Цитата:
Ты можешь объяснить зачем тебе это надебно?
довольно интересная схема защиты, только если не будет сети от вашего ПО откажутся. Хотя и сломать в тоже время не сложно, банальный эмуль HTTP-сервера + hosts-файл.

Последний раз редактировалось Человек_Борща; 10.06.2014 в 12:48.
Человек_Борща вне форума Ответить с цитированием
Старый 10.06.2014, 13:29   #8
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

опять неуловимый джо
eval вне форума Ответить с цитированием
Старый 10.06.2014, 14:17   #9
rafaelka
Пользователь
 
Регистрация: 10.06.2014
Сообщений: 18
По умолчанию

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
Делать то, что делает загрузчик винды. как это делать, естественно не известно.
по идее надо реверсить системный LoadLibrary и с смотреть что там как работает.
Спасибо, буду смотреть...

Далее по поводу обхода, там скорее только Tmeter, ибо hosts я проверяю на наличие левых файлов, и тметер тоже по хэндлу убиваю... Можно простым патчингом, но дело в том что всё завязано на PHP, с базой данных и сессиями... если будет неверная сессия dll просто не заработает)
rafaelka вне форума Ответить с цитированием
Старый 10.06.2014, 14:28   #10
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

с какого бока пхп и сессия к длл и ее запуску, этому джо и известно
eval вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Жесткий Диск Ba6aIKa Windows 1 20.11.2013 12:09
жесткий диск kazah Компьютерное железо 3 02.06.2011 18:47
жесткий диск nub' Компьютерное железо 7 20.08.2010 14:01
Жесткий диск Bat{CMD}_Men Компьютерное железо 0 14.02.2010 06:44
Жесткий диск Rio309 Компьютерное железо 11 10.06.2009 14:51