1,183
社区成员
发帖
与我相关
我的任务
分享
//获取指定文件的版本号
function getBRVersion(aFileName: string; var aVersion: string): BOOL;
var
lpdwHandel: Cardinal;
verInfoSize: DWORD;
pVerData: Pointer;
verInfo: PVSFixedFileInfo;
wV1, wV2, wV3, wV4: Word;
begin
Result := False;
verInfoSize := GetFileVersionInfoSize(PChar(aFileName), lpdwHandel);
if verInfoSize <> 0 then
begin
GetMem(pVerData, verInfoSize);
try
if GetFileVersionInfo(PChar(aFileName), lpdwHandel, verInfoSize, pVerData) then
begin
if VerQueryValue(pVerData, '\', Pointer(verInfo), verInfoSize) then
begin
wV1 := HiWord(verInfo.dwFileVersionMS);
wV2 := verInfo.dwFileVersionMS;
wV3 := HiWord(verInfo.dwFileVersionLS);
wV4 := verInfo.dwFileVersionLS;
aVersion := Format('%d.%d.%d.%d', [wV1, wV2, wV3, wV4]);
Result := True;
end;
end;
finally
FreeMem(pVerData);
end;
end;
end;