首页
社区
课程
招聘
[求助]
发表于: 2012-7-3 14:57 3578

[求助]

2012-7-3 14:57
3578
#include<windows.h>
#include<tchar.h>
#include<stdio.h>
extern "C" const IMAGE_DOS_HEADER  __ImageBase;

void DumpModule()
{
    HMODULE hModule = GetModuleHandle( NULL );
    _tprintf( TEXT( "with GetModuleHandle(NULL)= 0x%x\r\n" ),hModule );
    _tprintf( TEXT( "with __ImageBase= 0x%x\r\n" ),( HINSTANCE )&__ImageBase );
}
int main( int argc, char* argv[] )
{
    DumpModule();
    return 0;
}

请问这段代码里面的IMAGE_DOS_HEADER有什么用,我把这个删掉也能编译。

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 22
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
IMAGE_DOS_HEADER表示__ImageBase是属于IMAGE_DOS_HEADER这种类型
我觉得应该是这样理解,不知道对不对呵呵。
2012-7-3 15:13
0
雪    币: 285
活跃值: (16)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
2 种可能,第1,这个IMAGE_DOS_HEADER只在DOS系统中有用,WINDOWS里为了保持兼容,所以没有删除,第2 ,你这代码的文件名是C还是CPP,这个和extern "C"有关系的。
2012-7-3 20:31
0
游客
登录 | 注册 方可回帖
返回
//