软件版本定义规则有哪些?

软件版本定义规则有哪些?

关于版本号的说明:
对一个具体程序版本号共四位,(例如:1.9.9.10)
第一位为主版本号,在程序进行重大变更,如实现技术发生改变,或者变更巨大的时候才会增长;
第二位为次版本号,在程序变更比较大的时候,如变更导致部分程序实现发生改变时才会增长;
第三位为发行版本号,每发行一次增加1,标志软件发行次数。当主版本和次版本增长后,发行版本会归零;
第四位为编译版本号,属于内部的小版本号,只是简单的标志编译次数,对客户表现为无序增长。
====================================
Pascal中基本实现可以参考我的如下代码:
function GetBuildInfo(FName: string): string;
var
VerInfoSize: DWORD;
VerInfo: Pointer;
VerValueSize: DWORD;
VerValue: PVSFixedFileInfo;
Dummy: DWORD;
dwProductVersionMS,dwProductVersionLS:DWORD;
begin
Result:='';
VerInfoSize := GetFileVersionInfoSize(PChar(FName), Dummy);
GetMem(VerInfo, VerInfoSize);
GetFileVersionInfo(PChar(ParamStr(0)), 0, VerInfoSize, VerInfo);
VerQueryValue(VerInfo, '/', Pointer(VerValue), VerValueSize);
with VerValue^ do
begin
dwProductVersionMS := dwFileVersionMS;
dwProductVersionLS := dwFileVersionLS;
Result :=Format('%d.%d.%d.%d', [
dwProductVersionMS shr 16,
dwProductVersionMS and $FFFF,
dwProductVersionLS shr 16,
dwProductVersionLS and $FFFF
]);
end;
FreeMem(VerInfo, VerInfoSize);
end;
该文章转载自网络大本营:http://www.xrss.cn/Info/7178.Html