|
在OD 手动改代码 HOOK 能成功,2 Q {3 g0 \$ Q c9 D+ R
在注入DLL中用代码HOOK 就崩, 同样格式的代码其他游戏中不崩,能HOOK成功,' } L& a/ j; b6 a$ y% |# u
代码如下:7 r T. y3 `/ p) t' }
DWORD HOOK点 = 0x00675C0A;
. g7 S1 n8 [1 S. x6 h6 y# A8 Q DWORD 跳转地址 = (DWORD)HOOK_Communic;1 g+ a O0 {, }) e1 b( F
DWORD 跳转值 = 跳转地址 - (HOOK点 + 0x5);
; y5 D4 d+ ?, h& h) ~- T7 q int a = 0x99;
4 x- P& T1 H9 m$ a5 ` int b = 0x99;
. H) t% [0 d/ M! e: `3 h DWORD old = 0;' e' N2 E+ ]0 Q( b
a = VirtualProtect((LPVOID)HOOK点, 5, PAGE_EXECUTE_READWRITE, &old);//-------------------------------------------
" n$ X0 ]. a5 ]; W if (a == 0)
6 e5 @. g3 H- j) ~ {' c9 p! `: s2 I5 \ e; M6 _
b = (int)GetLastError;5 Y r- i- d& a, T/ L5 d$ r5 X3 ]6 s. u
}
! l b6 X9 _9 N' c6 X$ s现在自查到执行到VirtualProtect((LPVOID)HOOK点, 5, PAGE_EXECUTE_READWRITE, &old); 代码时候就崩了,' v C$ ]0 X0 [! k! f1 Y
" H: c" B& U( S, q0 ~9 `求解决思路
+ \1 D7 o$ p; j7 X$ H! x% L9 S0 O |
|