c# - 以编程方式修改元数据(.net 可执行文件)

标签 c# .net metadata il roslyn

我希望我的应用程序能够修改 .net 可执行文件的元数据。是否有 .net 类可以执行此操作,或者我是否必须解析可执行文件? (Roslyn 在这里可以提供帮助吗?)

如果我需要解析 exe - 它的格式是什么?我搜索了一下,但只找到了 this Wikipedia entry .

最佳答案

没有允许您重写 IL 的 .NET 类。

您必须在使用 Mono.Cecil 之间做出选择或阅读 CLR via C#然后编写您自己的 IL 重写器。 (这在技术上是可行的,毕竟 JB Evain 几乎完全由他自己编写了 Mono.Cecil)。

Mono.Cecil 的完整源代码可在 Github 上获得.

关于 Mono.Cecil 用法的基础知识可以在 its wiki 中找到.

关于c# - 以编程方式修改元数据(.net 可执行文件),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25643859/

相关文章:

c# - MessageBox.Show() 的问题

C#阅读流

.net - 在 C# 控制台应用程序中隐藏控制台窗口

c# - FireBird .net 提供商 64 位

pdf - 删除 PDF 元数据(删除完整的 PDF 元数据)

c# - 将 IEnumerable<T> 拆分为固定大小的 block (返回 IEnumerable<IEnumerable<T>> ,其中内部序列具有固定长度)

c# - 使一个类只拥有预定义的状态

c# - 我是否正确认为这个 async-await 示例没有做任何有用的事情?

pdf - 从研究论文的 PDF 中提取信息

sas - 根据包含元数据的文件构建 SAS 数据集