【发布时间】:2010-11-05 15:11:50
【问题描述】:
我想即时修改现有类的 .Net IL 代码。这有可能吗?我发现了一些对 .Net Profiling API 的引用,但根据文档,它不支持自我修改应用程序。主要目的是替换某些属性的 getter 和 setter。任何提示将不胜感激。
干杯, 阿奇姆
【问题讨论】:
标签: .net c#-4.0 intermediate-language
我想即时修改现有类的 .Net IL 代码。这有可能吗?我发现了一些对 .Net Profiling API 的引用,但根据文档,它不支持自我修改应用程序。主要目的是替换某些属性的 getter 和 setter。任何提示将不胜感激。
干杯, 阿奇姆
【问题讨论】:
标签: .net c#-4.0 intermediate-language
我建议您查看Mono Cecil。不要认为您不能在 Windows .NET 应用程序中使用 Mono 二进制文件。
塞西尔就像对类固醇的反思。您不仅可以反映程序集,还可以更改其 IL 并保存结果。
Here's a decent webcast 关于这样做。
【讨论】: