我想知道.net项目中的.PE文件是什么,它是项目的特定项目,并在编译后为每个项目生成。 另外.PE文件保存元数据+清单信息以进行汇编。 另外我很困惑的是项目中的每个类都有CLR生成.dll。
答案 0 :(得分:4)
您正在谈论的PE文件是“可移植可执行”格式。几乎Windows平台上的每个EXE和DLL都以PE格式格式化。要回答您的问题,它是一种通用格式,编译项目后生成的每个程序集都将是一个PE文件。您将为编译的每个.NET项目都有一个PE文件。 您可以在此处详细了解:http://en.wikipedia.org/wiki/Portable_Executable
不,不是项目中的每个类都会产生新的DLL。解决方案中的每个项目都将生成一个新的DLL或可执行文件。
答案 1 :(得分:4)
这不是文件,而是the first section of any executeable file that the OS loads。
所有Windows可执行文件都包含一个PE头,在.NET中可执行文件头调用.NET运行的CLR虚拟机(或者如果你的目标是一个版本,则会给你一条错误信息,说明你没有安装.NET。机器上缺少的.NET。)
答案 2 :(得分:3)
元数据存储在.NET Framework 可移植可执行(PE)文件的一个部分中。 为公共语言运行库编译程序时, 它被转换为PE文件,包含以下三个部分。
PE标头:PE文件主要部分的索引和地址 入口点。 MSIL指令:Microsoft中级 组成代码的语言指令(MSIL)元数据: 元数据表和堆。