
10.10.2024, 13:09
|
|
Новичок
Регистрация: 04.08.2021
Сообщений: 22
С нами:
2514225
Репутация:
3
|
|
c MinHook работает нормально
C++:
Код:
typedef
void
(
__thiscall
*
tChatAddEntry
)
(
void
*
,
int
nType
,
char
*
szText
,
char
*
szPrefix
,
DWORD textColor
,
DWORD prefixColor
)
;
tChatAddEntry origChatAddEntry
=
nullptr
;
void
__fastcall
HOOKED_ChatAddEntry
(
void
*
_this
,
void
*
pUnk
,
int
nType
,
char
*
szText
,
char
*
szPrefix
,
DWORD textColor
,
DWORD prefixColor
)
{
if
(
nType
==
8
&&
strstr
(
szText
,
"{FFFFFF}SA-MP {B9C9BF}0.3.7-R3 {FFFFFF}Started"
)
)
sprintf
(
szText
,
"{FFFFFF}Custom Text"
)
;
return
origChatAddEntry
(
_this
,
nType
,
szText
,
szPrefix
,
textColor
,
prefixColor
)
;
}
DWORD base
=
(
DWORD
)
GetModuleHandleA
(
"samp.dll"
)
;
MH_Initialize
(
)
;
MH_CreateHook
(
(
void
*
)
(
base
+
0x0067460
)
,
&
HOOKED_ChatAddEntry
,
(
void
*
*
)
&
origChatAddEntry
)
;
MH_EnableHook
(
(
void
*
)
(
base
+
0x0067460
)
)
;
//================= [unload .asi] =================
MH_DisableHook
(
(
void
*
)
(
base
+
0x0067460
)
)
;
|
|
|