文件生成方式:

在 VC 中,我们可以按下 Alt+F7 ,打开“Project Settings”选项页,选择 C/C++ 选项卡,并在最下面的 Project Options 里面输入:/Zd ,然后要选择 Link 选项卡,在最下面的 Project Options 里面输入: /mapinfo:lines 和 /map:PROJECT_NAME.map 。最后按下 F7 来编译生成 EXE 可执行文件和 MAP 文件

文件格式:

DllTwo                                                                                    //―――模块名

Timestamp is 4956e425 (Sun Dec 28 10:27:49 2008)                   //―――时间戳

Preferred load address is 10000000                                            //―――默认加载基地址

Start         Length     Name                   Class                            //各节的起始地址、长度

0001:00000000 00000da6H .text                   CODE                   //节名、类型等信息

0001:00000db0 00000053H .text$x                 CODE

0002:00000000 000000e8H .idata$5                DATA

0002:000000e8 00000004H .CRT$XCA                DATA

……

0002:00000100 000000b0H .rdata                  DATA

……

0002:0000045c 00000782H .idata$6                DATA

0002:00000be0 00000094H .edata                  DATA

0003:00000000 00000014H .data                   DATA

0003:00000018 00000354H .bss                    DATA

//各符号在节内的偏移地址、加载地址及符号出处

Address         Publics by Value              Rva+Base       Lib:Object

0000:00000003       ___safe_se_handler_count   00000003     <absolute>

0000:00000000       ___ImageBase               10000000     <linker-defined>

0001:00000000       ??4CDllTwo@@QAEAAV0@ABV0@@Z 10001000 f i DllTwo.obj

……

0001:00000804       __DllMainCRTStartup@12     10001804 f   MSVCRT:crtdll.obj

……

0001:00000cd0       ?CrashFun@@YAHXZ           10001cd0 f   DllTwo.obj

0001:00000cf0       _DllMain@12                10001cf0 f   DllTwo.obj

0001:00000d00       ?PrintInDllTwo@@YAHXZ      10001d00 f   DllTwo.obj

entry point at        0001:00000804                     //模块的入口地址

Static symbols                                                 //静态符号

0001:00000463       __catch$??$?6U?$char_traits@D@std@@@std@@YAAAV?$basic_ostream@DU?$char_traits@D@std@@@0@AAV10@PBD@Z$0 10001463 f i  CIL library: CIL module

0001:000004de       _pre_c_init                100014de f   MSVCRT:crtdll.obj

0001:000006ee       ___DllMainCRTStartup       100016ee f   MSVCRT:crtdll.obj

0001:00000db0

……

Exports                                              //导出符号

ordinal    name                                   //序号和名称

1    ??4CDllTwo@@QAEAAV0@ABV0@@Z (public: class CDllTwo & __thiscall CDllTwo::operator=(class CDllTwo const &))

2    ?CrashFun@@YAHXZ (int __cdecl CrashFun(void))

3    ?PrintInDllTwo@@YAHXZ (int __cdecl PrintInDllTwo(void))

VC6之MAP文件生成及格式的更多相关文章

  1. Rss 订阅:php动态生成xml格式的rss文件

    Rss 简介: 简易信息聚合(也 叫聚合内容)是一种描述和同步网站内容的格式.使用RSS订阅能更快地获取信息,网站提供RSS输出,有利于让用户获取网站内容的最新更新.网络用户可以在客户端借助于支持RS ...

  2. 通过OpenSSL来生成二进制格式证书文件(pfx和cer)

    1.生成RSA字符串私钥 genrsa -out private-rsa.key 2.由1中私钥导出*.cer二进制公钥文件 req -new -x509 -key private-rsa.key - ...

  3. 利用caffe生成 lmdb 格式的文件,并对网络进行FineTuning

    利用caffe生成 lmdb 格式的文件,并对网络进行FineTuning 数据的组织格式为: 首先,所需要的脚本指令路径为: /home/wangxiao/Downloads/caffe-maste ...

  4. keil MDK中如何生成*.bin格式的文件

    在Realview MDK的集成开发环境中,默认情况下可以生成*.axf格式的调试文件和*.hex格式的可执行文件.虽然这两个格式的文件非常有利于ULINK2仿真器的下载和调试,但是ADS的用户更习惯 ...

  5. 在MDK中怎样生成*.bin格式的文件?

    在Realview MDK的集成开发环境中.默认情况下能够生成*.axf格式的调试文件和*.hex格式的可运行文件. 尽管这两个格式的文件很有利于ULINK2仿真器的下载和调试,可是ADS的用户更习惯 ...

  6. 如何利用Grunt生成对应的Source Map文件,线上代码压缩使用chrome浏览器便于调式

    如何利用Grunt生成对应的Source Map文件,线上代码压缩使用chrome浏览器便于调式 首先我们来说说为何要生成sourceMap文件呢?简单的说,sourceMap是为了压缩后的代码调式提 ...

  7. weka数据挖掘拾遗(一)---- 生成Arff格式文件

    一.什么是arff格式文件 1.arff是Attribute-Relation File Format缩写,从英文字面也能大概看出什么意思.它是weka数据挖掘开源程序使用的一种文件模式.由于weka ...

  8. Beyond Compare脚本:命令行批量比较文件并生成html格式的差异报告

    BComp.exe /silent /closescript /solo @E:\compareTest\BCbatch.txt text-report layout:side-by-side opt ...

  9. 如何让使用create-react-app构建的项目在build过程中如何不生成.map文件

    避免create-react-app的项目在build的过程中生成 .map 文件的方法:主要是更改 package.json 里面的 build 命令!正式进入修改步骤前,推荐安装 cross-en ...

随机推荐

  1. DateTime? 定义的日期变量如何format

    DateTime? dateTime; dateTime.Value.ToString("yy-MM-dd")

  2. ORA-16019 和 ORA-16018 错误的处理方法(转)

    一. ORA-16019 和 ORA-16018 错误产生描述 同事在修改归档目录,一不小心把参数设置错误了, 他设置的是log_archive_dest参数. 这个参数和默认log_archive_ ...

  3. Python 接口类或抽象类 反射

    # 抽象类或者接口类,制定规范,统一方法名 # # 抽象类或者接口类,制定规范,统一方法名 from abc import ABCMeta,abstractmethod class Payrole(m ...

  4. Pyhton学习——Day33

    #并发式编程# 操作系统是一个用来协调.管理和控制计算机硬件和软件资源的系统程序,它位于硬件和应用程序之间.# (程序是运行在系统上的具有某种功能的软件,比如说浏览器,音乐播放器等.)# 操作系统的内 ...

  5. Xcode10适配——Error:Multiple commands produce

    今天苹果正式推送了iOS12,今天上午就更新了最新的iOS,及Xcode10.这次更新还行,不需要我们对以前的项目紧急修复,大动手术. 用Xcode10跑之前的项目,也就报了一种类型的错误:Multi ...

  6. hp soap扩展最全说明,附天气预报调用的例子

    自从php5开始,我们可以不用通过php nusoap来创建php soap web service 和调用 soap了,php5内置了 soap扩展.只需要在php.ini中开启soap的exten ...

  7. laravel contains 的用法

    最近在学laravel,做一下学习笔记. 1.contains()方法判断集合是否包含给定的项目: ]);var_dump($collection->contains('Desk'));// t ...

  8. 【HNOI】合唱队

    [HNOI]合唱队 题意 对于一个初始序列,保证两两不同,通过一些变换得到目标序列: 第一个值直接插入空的当前队列 对于从第二个值开始的每个值 如果原序列中 $ a[i] $,若 $ a[i]> ...

  9. vivo输入法 需求分析

    我使用的输入法:vivo输入法 1,用户界面:界面为白色和灰色,整体简洁大方,个人而言外观挺不错.但是不能自定义界面,更改背景图片或是主题. 2,记住用户选择:可记忆上次使用后的键盘方式(26键或是9 ...

  10. Laravel核心解读--Contracts契约

    Contracts Laravel 的契约是一组定义框架提供的核心服务的接口, 例如我们在介绍用户认证的章节中到的用户看守器契约IllumninateContractsAuthGuard 和用户提供器 ...