獲取軟體版本號
阿新 • • 發佈:2018-11-07
{------------------------------------------------------------------------------- 過程名: GetBuildInfo 過程描述: 獲取軟體版本號 作者: LYK 日期: 2018.11.02 引數: 無 返回值: string -------------------------------------------------------------------------------} function GetBuildInfo: string; var verinfosize : DWORD; verinfo : pointer; vervaluesize : dword; vervalue : pvsfixedfileinfo; dummy : dword; v1,v2,v3,v4 : word; begin verinfosize := GetFileVersionInfoSize(pchar(ParamStr(0)),dummy); if verinfosize = 0 then begin dummy := GetLastError; result := '0.0.0.0'; end; GetMem(verinfo,verinfosize); GetFileVersionInfo(pchar(paramstr(0)),0,verinfosize,verinfo); VerQueryValue(verinfo,'\',pointer(vervalue),vervaluesize); with vervalue^ do begin v1 := dwfileversionms shr 16; v2 := dwfileversionms and $ffff; v3 := dwfileversionls shr 16; v4 := dwfileversionls and $ffff; end; result := inttostr(v1) + '.' + inttostr(v2) + '.' + inttostr(v3) + '.' + inttostr(v4); FreeMem(verinfo,verinfosize); end;