Mono里运行C#脚本14—.net CLR metadata
Metadata root
Offset Size Field Description
0 4 标志: 0x424A5342(BSJB).
4 2 主版本号, 1 (ignore on read)
6 2 次版本号, 1 (ignore on read)
8 4 保留,默认为 0 (§II.24.1).
12 4 版本字符串长度.
16 m 版本字符串,UTF8编码 0结束标志,由前面字符指定了长度。.NET 2.0, 3.0 和 3.5 的字符串为 “v2.0.50727”, 3.0 or 3.5 和 4.0的字符中为“v4.0.30319”.
16+m x-m 填充到4字节对齐边界.
16+x 2 保留标志,0 (§II.24.1).
16+x+2 2 流编号,表示后面n个流.
16+x+4 n个流结构头数据(n个StreamHeaders)
流结构头(StreamHeader)的定义:
Offset Size Field Description
0 4 表示从metadata root开始到流的位置偏移值
4 4 表示本流的长度,单位为字节,应该是4的倍