为什么转储的IL文件小于.exe文件?

时间:2017-02-17 20:22:01

标签: c# cil

当我将.exe文件反汇编为中间语言时,为什么我会获得小于可执行文件的转储?是不是因为没有包含静态链接的代码?

1 个答案:

答案 0 :(得分:3)

EXE文件不仅包含二进制程序代码。它还可以包含嵌入式资源,静态链接库,字符串,标题,元数据信息,符号表/调试信息以及许多其他内容。

另外,请记住,编译会经历一个优化阶段,可能会对代码进行转换以优化代码。反汇编代码可能与原始源代码不匹配。