Portable Executable File Format

PE Format  微软官方的

What is a .PE file in the .NET framework? [closed]

The PE file you are talking about is the "Portable Executable" format. Almost every EXE and DLL on the Windows platform is formatted in PE format. To answer your question, it's a general format and every assembly generated after compilation of your project will be a PE file. You will have a PE file for every .NET project you compile. You can read more about it here: http://en.wikipedia.org/wiki/Portable_Executable

And no, not every class in a project results in a new DLL. Every project in a solution will result in a new DLL or Executable.

A .NET assembly viewer

For PE/.NET file format information, I would suggest reading sections 21-24 of ECMA-335 Partition II, available all over the web. Inside Microsoft .NET IL Assembler is also a good book, despite the occasional inaccuracy.

If you want to go further and understand the actual CIL instructions in your assembly, Compiling for the .NET Common Language Runtime is an excellent book.

If you want to examine your binary files in comfort, may I humbly plug my own AXE program.

http://jilc.sourceforge.net/ecma_p2_cil.shtml

Anatomy of a .NET Assembly  red-gate上的博客

Anatomy of a .NET Assembly – PE Headers

Anatomy of a .NET Assembly – CLR metadata 1

Anatomy of a .NET Assembly – CLR metadata 2

大概有10篇左右的文章,可以用以下语法,搜索

Anatomy of a .NET Assembly site:https://www.red-gate.com/simple-talk

最新文章

  1. Jmeter 使用Jmeter与Badboy进行压力测试
  2. SWF READER 破解日志。
  3. 黄聪:Wordpress二级域名共享用户cookie出现错误解决方案及WP的Cookie机制
  4. rails获取json内容
  5. jQuery结合Ajax实现简单的前端验证和服务端查询
  6. 转 sql 时间转换格式 convert(varchar(10),字段名,转换格式)
  7. C# Async与Await用法
  8. Angularjs在线编辑器
  9. 批量产生ssh2项目中hibernate带注解的pojo类的快捷方法
  10. Android 中 SQLite 性能优化
  11. 基于visual Studio2013解决C语言竞赛题之1010计算
  12. JS数组例子
  13. day01:study HTTP协议
  14. shell中的crontab定时任务
  15. Shiro安全框架【快速入门】就这一篇!
  16. excel函数2
  17. @JSONField使用
  18. C#使用MemoryStream类读写内存
  19. python3.5和python3.6关于json模块的区别
  20. linux连接工具隧道模式

热门文章

  1. count(*),count(1),count(字段)
  2. Golang Gateway API 搭建教程
  3. SQLplus命令中删除键和翻页键不能用的问题
  4. 写Java也得了解CPU–CPU缓存
  5. 5.Shell 流程控制语句
  6. python3.6 错误: ModuleNotFoundError:No module named "Crypto"
  7. 安装WIN10+Ubuntu18.04安装教程(实测有效)
  8. html5测试
  9. springcloud实践(一)服务发现:Eureka
  10. JAVA-产生唯一32位GUID