目前,我正在使用AssemblyVersionAttribute
来指定已编译程序集的程序集版本。
但是,AssemblyVersionAttribute
只允许指定16位版本[1]。如何指定大于零的MajorRevision
?
答案 0 :(得分:1)
MajorRevision
类的MinorRevision
和Version
属性分别根据Revision
属性计算,分别为Revision >> 16
和Revision & 0xffff
(尝试在Reflector中打开 mscorlib 。
程序集版本控制不支持长度大于16位的修订号。该数据存储在汇编二进制文件的16位部分中。换句话说,汇编版本仅支持Version
类的一部分功能。您可以在十六进制编辑器中看到这一点:将版本设置为1.0.0.65534,将在已编译的DLL 0100 0000 0000 feff
中提供十六进制字节。尝试在以下两个字节中插入值,然后检查程序集不会将版本号增加到16位以上。