HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby
   
 
 
Опции темы Поиск в этой теме Опции просмотра

  #11  
Старый 11.08.2019, 23:34
ШPEK
Познавший АНТИЧАТ
Регистрация: 22.02.2017
Сообщений: 1,474
С нами: 4852492

Репутация: 88


По умолчанию

Цитата:
Сообщение от Stiopko  

Всем привет, пытаюсь поставит хук на самповскую функцию SAMP_FUNC_SENDCMD 0x65C60

ставлю через https://blast.hk/threads/30412/

C++:





Код:
DWORD Trampoline
=
0x0
;
byte prologue
[
6
]
;
void
UserHook
(
void
*
_this
,
char
*
message
)
{
MessageBoxA
(
NULL
,
message
,
"sadasd"
,
NULL
)
;
__asm jmp Trampoline
}
// устанавливаю
DWORD Addr
=
SF
->
getSAMP
(
)
->
getSAMPAddr
(
)
+
SAMP_FUNC_SENDCMD
;
Trampoline
=
MakeJump
(
Addr
,
(
DWORD
)
&
UserHook
,
prologue
,
6
)
;


но при вызове команды происходит краш

вот скрины с енжина
до

и после установки

по моему выглядит красиво, но все же я где-то проебался

пробовал и с __stdcall функцию UserHook, и брал размер пролога 8 вместо 6 тоже не помогло, что я делаю не так?
Сделай через call (0xE8)

C++:





Код:
void
_stdcall
hook
(
const
char
*
text
)
{
addBlueText
(
text
)
}
void
_declspec
(
naked
)
change
(
)
{
__asm
{
push
[
esp
+
8
]
call hook
  mov eax
,
fs
:
[
0
]
ret
}
}


У меня так все работало
 
Ответить с цитированием
 





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.