Joh*_*n K 7 .net c# reflection.emit
我使用System.CodeDom.CodeCompileUnit动态构建了一些类型,想要将它们编译成内存中的IL代码,并将该IL代码注入到内存中加载的程序集中 - 不需要将任何内容保存到磁盘中.也许我说的计划是错的.打开有关如何将CodeCompileUnit实例添加到所述目标的其他建议.
Ray*_*rns 7
您可以使用ICorDebug接口将代码注入现有(已加载)程序集.编辑并继续执行此操作.
ICorDebug
计算delta字节并调用ICorDebugModule2::ApplyChanges.有关更多详细信息,请参阅MDbg示例代码.
ICorDebugModule2::ApplyChanges
曾几何时我们使用ICorDebugModule::GetEditAndContinueSnapshot和亲属,但这些现在已被弃用.
ICorDebugModule::GetEditAndContinueSnapshot
更新如果您不关心将代码注入已加载的程序集中,那么仅使用Reflection.Emit创建新程序集会更高效,也更容易.
Reflection.Emit
归档时间:
16 年 前
查看次数:
1470 次
最近记录:
13 年,9 月 前