gpt4 book ai didi

c# - .NET 程序集版本中保留的最大值

转载 作者:行者123 更新时间:2023-11-30 17:33:07 26 4
gpt4 key购买 nike

我想知道为什么汇编版本不能有最大 UInt16 值。 MSDN states那:

All components of the version must be integers greater than or equal to zero. Metadata restricts the major, minor, build, and revision components for an assembly to a maximum value of UInt16.MaxValue - 1.

有谁知道最大值是用来做什么的?

更新 1

这不是一个重复的问题。我不是在询问 UInt16 本身的最大值,即 65535。我在问为什么 版本的最大可能值 是 65534。我还没有找到关于最后一个值的内部使用以及为什么它在 .NET 中保留的任何解释。

更新 2

人们说最大值可以用于*。是的,确实可以将程序集版本设置为类似 1.0.* 的版本。我做到了。然后检查编译文件的 list :

enter image description here

如您所见,编译器没有将构建和修订设置为 65535。相反,它产生了一些特定的值(value)。所以,可能最大值不适用于 *

最佳答案

Why are build numbers limited to 65534?

文件版本

Binary version number for the file. The version consists of two 32-bit integers, defined by four 16-bit integers. For example, "FILEVERSION 3,10,0,61" is translated into two doublewords: 0x0003000a and 0x0000003d, in that order. Therefore, if version is defined by the DWORD values dw1 and dw2, they need to appear in the FILEVERSION statement as follows: HIWORD(dw1), LOWORD(dw1), HIWORD(dw2), LOWORD(dw2).

元数据将主要、次要、构建和修订限制为最大 UInt16.MaxValue - 1。ref

关于c# - .NET 程序集版本中保留的最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44679828/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com