深入理解 CIL 与动态程序集的角色
1. 理解 CIL 指令和属性
在了解了如何使用 ildasm.exe 和 ilasm.exe 进行往返操作后,我们可以深入研究 CIL 本身的语法和语义了。接下来,我们将逐步创建一个包含一组类型的自定义命名空间。为了简化,这些类型暂时不包含成员的实现逻辑。在掌握创建空类型的方法后,我们再使用 CIL 操作码定义“真实”的成员。
2. 在 CIL 中指定外部引用程序集
首先,使用你喜欢的编辑器创建一个名为 CILTypes.il 的新文件。CIL 项目的首要任务是列出当前程序集使用的外部程序集。在本示例中,我们仅使用 mscorlib.dll 中的类型。为此,使用 external 属性限定 .assembly 指令。当引用强命名程序集(如 mscorlib.dll )时,还需指定 .publickeytoken 和 .ver 指令,示例如下:
.assembly extern mscorlib
{
.publickeytoken = (B7 7A 5C 56 19 34 E0 89 )
.ver 4:0:0:0
}
注意 :严格来说,不需要显式将 mscorlib.dll
超级会员免费看
订阅专栏 解锁全文
88

被折叠的 条评论
为什么被折叠?



