我有一个由我构建的 .NET 程序集,但希望能够在运行时使用一些较小但任意的属性更改文件重写 .DLL 。具体来说,我希望能够更改类属性的属性,以便我可以根据情况自定义二进制文件。
为了说明,我想实现编辑从代码生成的程序集的效果
[SomeAttribute("Name")]
public class MyClass{
...
这样新组件在功能上与
[SomeAttribute("Custom Name")]
public class MyClass{
...
这个“自定义名称”可以是任何东西(在运行时确定)。这可以在运行时完成吗?
实际 .DLL 需要修改的原因是因为它会被一个无法确定运行时信息的单独进程加载(我不控制这个进程)。
到目前为止的实验表明,如果新的“自定义名称”与原始名称的长度相同,它似乎可以工作,但否则就不行(即使您编辑指定长度的前一个字节;大概文件中某处存储了偏移量)。
编辑:忘了提,解决方案也需要在 .NET 2 框架下。
缥缈止盈
慕码人8056858
相关分类