Показать сообщение отдельно

  #7169  
Старый 16.02.2024, 12:49
вайега52
Флудер
Регистрация: 19.06.2022
Сообщений: 2,997
С нами: 2055431

Репутация: 3


По умолчанию

Цитата:
Сообщение от !Sam#0235  

Can someone provide a clear, direct and concise example code of an OnCloseDialog hook? (.ASI)

Может ли кто-нибудь предоставить ясный, прямой и краткий пример кода перехватчика OnCloseDialog? (.ASI)
Попробуй что-то подобное (показал на примере kthook)

C++:





Код:
#include 
#include "kthook/kthook.hpp"
// edx - bypass MSVC
kthook
::
kthook_simple

(
CDialogCloseHook
)
;
void
__fastcall
CDialogCloseHooked
(
const
decltype
(
CDialogCloseHook
)
&
hook
,
void
*
pDialog
,
void
*
edx
,
char
button
)
{
// code
return
hook
.
get_trampoline
(
)
(
pDialog
,
edx
,
button
)
;
}
// install hoook (after initialization of SAMP)
CDialogCloseHook
.
set_cb
(
&
CDialogCloseHooked
)
;
auto
sampHandle
=
reinterpret_cast

(
GetModuleHandleA
(
"samp.dll"
)
)
;
// 0x6C040 - R1
CDialogCloseHook
.
set_dest
(
sampHandle
+
0x6C040
)
;
CDialogCloseHook
.
install
(
)
;
 
Ответить с цитированием