从 C# 检索程序集的 MVID?
如何在 C# 中使用反射检索 .NET 程序集的模块版本标识符 (MVID)?
How to retrieve the module version identifier (MVID) of a .NET assembly using reflection in c#?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
下面的示例不使用反射来加载程序集,而是使用 System.Reflection。元数据:
这是使用 Mono.Cecil 的示例:
这是用于读取 MVID 且没有任何依赖项的独立代码示例。它是单个文件中 Mono.Cecil 的精简版本:
https://github.com/KirillOsenkov/MetadataTools/blob/ master/src/PEFile/ImageReader.cs
Here's a sample that doesn't use Reflection to load the assembly but instead uses System.Reflection.Metadata:
And here's a sample of using Mono.Cecil:
And here's an example of a standalone code to read the MVID without any dependencies. It is a stripped-down version of Mono.Cecil in a single file:
https://github.com/KirillOsenkov/MetadataTools/blob/master/src/PEFile/ImageReader.cs
应该是:
程序集中可以有其他模块,但 ManifestModule 将是“标识”程序集本身的模块。
Should be:
There can be other modules in an assembly, but the ManifestModule would be the one that "identifies" the assembly itself.