![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 | ||
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
![]() Цитата:
Цитата:
|
||
![]() |
![]() |
![]() |
#12 | |
Форумчанин
Регистрация: 03.01.2010
Сообщений: 229
|
![]()
http://www.sql.ru/forum/actualthread...=20&tid=745040
Друг мой, зачем перед обиженым мальчишкой оправдываешься? Цитата:
Я не обижаюсь, а злюсь, потому что ты ведешь себя по отношению ко мне как быдло. Твои не слишком умные ответы, меня выводят из себя. Ты содрал код, переделав его под себя. Ты переписал на плюсы его. Понимаешь, переписать с другого языка, добавив капельку своего кода не называеться "я сам сделал", или называеться? И если ты такой умный и если тебя это не задело ни капли, то не отвечай ничего в мой адресс, или можешь описать техническую реализацию данного метода. И ненадо мне ваших советов, которых я не просил.
подпись
|
|
![]() |
![]() |
![]() |
#13 |
Android Developer
Старожил Подтвердите свой е-майл
Регистрация: 19.02.2007
Сообщений: 3,708
|
![]()
Может не надо извить ? Я разобрался, и написал сам под себя, а не содрал. Технически ? Ок.
1. Есть функцию целевая 2. Сначала получаем ее адрес 3. Выделяем память (пусть 255 байт) для хранения перезаписанных байт и прыжка на оригинальный адрес (ну с вычитанием размера байт сохраненных) 4. Сохраняем байты (команды, для этого и нужно было SizeOfCode), потом вставляем jmp и относительный адрес продолжения оригинального кода 5. Спокойно заменяем по оригинальному адресу jmp на относительный адрес нашей функции перехватчика 6. Т.к. после замены, мы знаем адрес где располагаются начальные (сохраненные) байты оригинальной функции (ну а дальше прыжок...), то в функции перехватчике просто формируем функцию указатель и вызываем ее по этому адресу, таким образом выполнится начало оригинальной функции, потом обычный прыжок, и дальше так, если бы не перехватывали вообще саму функцию 7. Восстановить просто, по сути затереть наш jmp на те сохраненные байты Нет, я не разобрался. И с каких пор я Вам на "ты" ? Не много уважения пожалуйста. И теперь, что, если я разобрался используя внешние материалы, то это называется я переписал и все? Тогда зачем мы делимся всем? выходит что никто сейчас не делает сам ничего, все перекатывают ![]() |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
перехват API функций | ассемблер123 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 16 | 29.04.2010 12:51 |
Внедрение DLL и перехват API-функций | Doom_Rooster | Win Api | 4 | 01.04.2010 03:37 |
обновление в блоге - Перехват API функций. Основы | Pblog | Обсуждение статей | 0 | 20.01.2009 10:40 |
API перехват | Irat | Помощь студентам | 13 | 11.02.2008 12:04 |
Перехват API функций | satana | Win Api | 4 | 21.08.2007 20:12 |