首页
社区
课程
招聘
[求助]帮忙解释一下替代dll中函数的问题
发表于: 2008-8-29 13:46 4517

[求助]帮忙解释一下替代dll中函数的问题

2008-8-29 13:46
4517
获取函数的地址后
用一个自己的函数替代,可声名的代码却看不懂啊
如:
typedef HANDLE (__stdcall *OPENPROCESS)(DWORD,BOOL,DWORD);
自己的函数:
HANDLE __stdcall  MyOpenProcess(DWORD dwDesiredAccess, BOOL bInheritHandle, DWORD dwProcessId)
{
}
主要是typedef用法不太清楚....
哪位大哥解释一下....

[课程]FART 脱壳王!加量不加价!FART作者讲授!

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 949
活跃值: (18)
能力值: ( LV9,RANK:330 )
在线值:
发帖
回帖
粉丝
2
typedef 定义的是一个函数指针
HANDLE   返回类型
__stdcall  按从右至左的顺序压参数入栈,由被调用者把参数弹出栈。
*OPENPROCESS  指向函数的指针

现在你定义了一个新类型,是指向函数的指针.
2008-8-29 15:04
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
那为什么不是*OPENPROCESS   MyOpenProcess(DWORD dwDesiredAccess, BOOL bInheritHandle, DWORD dwProcessId){}呢??
这个问题困扰我好久了....
2008-8-29 15:15
0
雪    币: 375
活跃值: (12)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
4
typedef定义的是一个函数指针。
也就是保存一个地址而已。

至于调用,你可以自己push + call。
2008-8-30 11:00
0
游客
登录 | 注册 方可回帖
返回
//