如何指定.NET Assembly的MajorRevision?

时间:2012-05-18 14:07:25

标签: .net versioning

目前,我正在使用AssemblyVersionAttribute来指定已编译程序集的程序集版本。 但是,AssemblyVersionAttribute只允许指定16位版本[1]。如何指定大于零的MajorRevision

1 个答案:

答案 0 :(得分:1)

MajorRevision类的MinorRevisionVersion属性分别根据Revision属性计算,分别为Revision >> 16Revision & 0xffff(尝试在Reflector中打开 mscorlib

程序集版本控制不支持长度大于16位的修订号。该数据存储在汇编二进制文件的16位部分中。换句话说,汇编版本仅支持Version类的一部分功能。您可以在十六进制编辑器中看到这一点:将版本设置为1.0.0.65534,将在已编译的DLL 0100 0000 0000 feff中提供十六进制字节。尝试在以下两个字节中插入值,然后检查程序集不会将版本号增加到16位以上。