关于替换API的问题
LJN 2002-02-28 09:06:00 替换一个API需要定义其原型以接受参数输入和处理完后调用原系统函数于是每hook一个API
我们都要做以下几步:
BOOL WINAPI MyTextOutA(HDC hdc,int x,int y,LPCTSTR str,int nLen);
typedef BOOL (WINAPI * SysTextOutA)(HDC,int,int,LPCTSTR,int);
SysTextOutA SysFun = (PROC)GetProcAddress(GetModuleHandle("gdi32.dll"),"TextOutA");
BOOL WINAPI MyTextOutA(HDC hdc,int x,int y,LPCTSTR str,int nLen)
{ return ((SysTextOutA)(PROC)SysFun)(hdc,x,y,str,nLen);}
如果想要hook一个DLL下的所有函数,就需要定义所有原型吗?我看见一些工具似乎
能hook很多DLL下的所有函数,甚至包括我自己作的DLL.哪位能给我点提示呢?