Полезности Исключительно для полезных тем из других разделов.
Темы тут не создаются!
Темы сюда перемещаются из других разделов, и на их старых местах остаются постоянные перенаправления.
11.05.2010, 20:08
#1
Пользователь
Регистрация: 03.11.2008
Сообщений: 60
Сказал Спасибо: 3
Имеет 107 спасибок в 21 сообщенях
Yegor , напиши в длл код который позволит выгрузить себя и загрузить новую версию длл, если надо
11.05.2010, 21:34
#2
Новичок
Регистрация: 11.05.2010
Сообщений: 19
Сказал Спасибо: 0
Имеет 10 спасибок в 6 сообщенях
Цитата:
Сообщение от
GoldFinch
Yegor , напиши в длл код который позволит выгрузить себя и загрузить новую версию длл, если надо
Это как-то мудрено очень. К тожу-же, чуть напортачишь в
подгружаемой dll и клиент вылетает с ошибкой.
Я инжектируемую dll пишу, чтоб была возможно более простая.
Только перехват команд от клиента и от сервера и отсылка в основной
модуль программы. Связь между dll и модулем делал раньше через
mapped file а сейчас по IP(UDP).
На будущее, это позволит собирать инфу с нескольких клиентов запущеных на разных компах в один коммандный центр.
За это сообщение Эдвадко нажился спасибкой от:
12.05.2010, 00:09
#3
Местный
Регистрация: 05.04.2009
Сообщений: 1,436
Сказал Спасибо: 306
Имеет 122 спасибок в 98 сообщенях
GoldFinch , это то я напишу, но вот Delphi для отладки dll хочет сама запускать процесс в который её будет загружать.
Эдвадко , в l2ext от Alexteamа похоже сделано так же, начну сначала с общения через message а потом и tcp\ip задействую.
__________________
Продажа чистых аккаунтов 4G, L2 EU, AARu, AA EU, Aion EU, Tera RU, Tera EU (ICQ 594297609)
Продажа VK авторег аккаунтов (ICQ 594297609)
12.05.2010, 07:44
#4
Новичок
Регистрация: 11.05.2010
Сообщений: 19
Сказал Спасибо: 0
Имеет 10 спасибок в 6 сообщенях
[quote=Yegor;88284]GoldFinch , это то я напишу, но вот Delphi для отладки dll хочет сама запускать процесс в который её будет загружать.
Я например отладчик не пользую - ну так получилось.
В качестве отладчика использую ту-же внедряемую dll
Удалось перехватить какую функцию - хук начинает логировать
адреса вызова этой функции и параметры вызова.
Потом ползаю по дизассемблированой engine.dll по соотв. адресам и смотрю че и как.
static DWORD HookProcAdr;
void __declspec(naked) __stdcall HookProcE9()
{
static DWORD SavedRetAddr,SavedArg0,SavedArg4,SavedArg8;
__asm push ebp
__asm mov ebp,esp
__asm pushad
__asm mov eax,[ebp+4] //RetAddr
__asm mov SavedRetAddr,eax
__asm mov eax,[ebp+8] //Arg0
__asm mov SavedArg0,eax
__asm mov eax,[ebp+12] //Arg4
__asm mov SavedArg4,eax
__asm mov eax,[ebp+16] //Arg8
__asm mov SavedArg8,eax
static char str[100];
_snprintf(str,100,"%u",*(PBYTE)SavedArg0);
MappedText(str,0xFFFFFF00);
fprintf(LogFile,"HookE9 %x %x %x %x %02x\n",SavedRetAddr,SavedArg0,SavedArg4,SavedArg8 ,*(PBYTE)SavedArg0);
__asm popad
__asm pop ebp
__asm push HookProcAdr
__asm retn
}
Последний раз редактировалось Эдвадко, 12.05.2010 в 07:46 .
За это сообщение Эдвадко нажился 2 спасибками от:
14.05.2010, 20:18
#5
Местный
Регистрация: 05.04.2009
Сообщений: 1,436
Сказал Спасибо: 306
Имеет 122 спасибок в 98 сообщенях
GoldFinch , ты ранее писал переходник для вызова с++ функций с соглашением ThisCall из делфи. А можно сделать переодник дял того чтобы функция делфи вызывалась как ThisCall?
Добавлено через 2 часа 51 минуту
Вопрос снят, получилось
__________________
Продажа чистых аккаунтов 4G, L2 EU, AARu, AA EU, Aion EU, Tera RU, Tera EU (ICQ 594297609)
Продажа VK авторег аккаунтов (ICQ 594297609)
Последний раз редактировалось Yegor, 14.05.2010 в 20:18 .
Причина: Добавлено сообщение
Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
Часовой пояс GMT +4, время: 05:07 .
vBulletin style designed by
MSC Team .
Powered by vBulletin® Version 3.6.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод:
zCarot
Вы хотите чувствовать себя в безопасности? чоп Белган обеспечит её!