C如何获取函数地址?
本帖最后由 xlrtx 于 2013-12-04 00:37:54 编辑
#include
typedef unsigned long DWORD;
int main()
{
DWORD lpMain = 0;
lpMain = (DWORD)main;
return 0;
}
这是测试的c代码..
可是debug的时候,发现获取的地址不正确..
情况很奇葩,如图:
内存中的地址没有问题,可是赋值的时候值突然变了..
仔细看了一下,获取的内容好像是IAT表对应main函数的地址.
不知道有没有什么方法能够直接得到main函数在内存中的地址..
c
函数地址
函数指针
分享到:
更多
------解决方案--------------------
要么用函数指针,或者汇编吧!
------解决方案--------------------
#include
typedef int (*entry_t)(int argc, char *argv[]);
int main(int argc, cha