|
|
在OD 手动改代码 HOOK 能成功,# W) @5 R$ M/ r" a4 M, x
在注入DLL中用代码HOOK 就崩, 同样格式的代码其他游戏中不崩,能HOOK成功,1 L) F1 Q) a# i8 \ d* c
代码如下:
# W' l0 H& P: t% i DWORD HOOK点 = 0x00675C0A;5 k+ [; X9 X h! {, h* w
DWORD 跳转地址 = (DWORD)HOOK_Communic;
% F9 G+ W2 s) ~% r% a H DWORD 跳转值 = 跳转地址 - (HOOK点 + 0x5);
& j/ y8 ]. Q) A' |' [/ B* X int a = 0x99;5 V) s: A3 D2 s6 t4 j' N2 g
int b = 0x99;: l) L" n- f/ c5 _9 `- ^8 J
DWORD old = 0;
: i8 i# S& X9 U a = VirtualProtect((LPVOID)HOOK点, 5, PAGE_EXECUTE_READWRITE, &old);//-------------------------------------------" T8 [9 w+ _6 o: u7 o% R
if (a == 0)
: p/ `) E5 M2 G5 Q" j) \ {/ j3 L# `* l# O. @7 L
b = (int)GetLastError;3 C8 ]7 K; E9 H( G: H
}
4 J6 _* f6 L8 a V7 x6 k$ U2 z现在自查到执行到VirtualProtect((LPVOID)HOOK点, 5, PAGE_EXECUTE_READWRITE, &old); 代码时候就崩了,8 ~4 o& r4 V8 x6 d/ n6 O
- K: g$ h8 T4 g! Z; N, v! B/ j' M" O: j
求解决思路
_' Z$ K$ w! }* l& U1 }9 V2 ~ |
|