正如问题所述,如何使用Mono.Cecil编辑已编译的可执行文件的程序集信息?我试着使用FileVersionInfo,但它是只读的,我知道Mono.Cecil/dnlib也有可能。
发布于 2017-02-14 02:59:28
我知道这个问题已经有几个月了,但是我还是把我的答案贴出来了,也许将来会有人从中受益。
首先,dnlib/Mono.Cecil还没有内置的特性来修改.NET可执行文件或DLL的AssembyInfo。
然而,我可以推荐你使用Daniel Doubrovkine的resourcelib。
它就是为这座房子而造的。下面是一个如何使用它的示例:
VersionResource versionResource = new VersionResource();
versionResource.LoadFrom("C:\\MyFile.exe");
StringFileInfo stringFileInfo = (StringFileInfo)versionResource["StringFileInfo"];
versionResource["StringFileInfo"];
stringFileInfo["CompanyName"] = "My Company";
stringFileInfo["FileDescription"] = "This is a file";
stringFileInfo["ProductName"] = "My awesome product";
stringFileInfo["LegalCopyright"] = "Copyright Me";您可以按如下方式保存更改:
versionResource.SaveTo("C:\\MyFile-patched.exe");https://stackoverflow.com/questions/35767342
复制相似问题