api hook 技术
以前小甲鱼的 http://bbs.fishc.com/forum.php?mod=viewthread&tid=37576&page=1#pid1290919 我现在想拦截findwindowexa 我就这么写了其他的没加程序第一处
hhk: HHOOK;
Hook: array of TNtHookClass;
//内存映射
MemFile: THandle;
startPid: PDWORD; //保存PID
第2处
function Newfindwindowex(_hWnd ,hwndChildAfter:HWND; xp,ew:string):hwnd;stdcall;
type
TNewfindwindowex = function (_hWnd, hwndChildAfter:HWND;xp,ew: string):hwnd;stdcall;
begin
xp:='dsfsdsa';
Hook.UnHook;
Result := TNewfindwindowex(Hook.BaseAddr)(_hWnd ,hwndChildAfter:HWND; xp,ew:string);
Hook.Hook;
end;// 这个是我自己添加的函数 然后最后一步
Hook := TNtHookClass.Create('user32.dll', 'MessageBoxA', @NewMessageBoxA);
Hook := TNtHookClass.Create('user32.dll', 'MessageBeep', @NewMessageBeep);
Hook := TNtHookClass.Create('user32.dll', 'MessageBoxW', @NewMessageBoxW);
Hook := TNtHookClass.Create('kernel32.dll', 'OpenProcess', @NewOpenProcess);
Hook := TNtHookClass.Create('user32.dll', 'findwindowex', @Newfindwindowex); //这个是我加的 应该可以拦截下来 但是就是拦截不下来 帮我看看啊 大神~~~~~~~们小虾也可以 只要懂的 速度教下我@小甲鱼 Result := TNewfindwindowex(Hook.BaseAddr)(_hWnd ,hwndChildAfter, xp,ew);上面有句是这样的
页:
[1]