C#编译器将代码打包成托管模块后,接着会将这些模块合并成程序集,然后统一加载到一个具体的目录,CLR在这个目录查找并且加载所需要的DLL或者exe.
程序集分类:弱命名程序集和强命名程序集,强命名程序集用发布者的公钥/私钥签名发布
详细点比如你生成的程序集的System.Object 他在mscorlib.dll种定义mscorlib.dll就是一种强命名程序集,上面用了一些已知的安全策略。
程序集采用两种部署方式:私有或者全局。
要搞清楚如何解析得先了解元数据的数据结构:
结合元数据表看下图:此处类容可以参考第一篇,第二篇:
https://www.cnblogs.com/LiMin/p/10712789.html
https://www.cnblogs.com/LiMin/p/10712852.html 有稍微帮助
前三篇不强迫大家熟悉,因为个人感觉就是本来这个偏向理论仅作了解。