精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>● Delphi>>Windows API函数>>Re:在自己的程序中﹐怎樣用程序取得程序的版本號?

主题:Re:在自己的程序中﹐怎樣用程序取得程序的版本號?
发信人: quyan(奶瓶)
整理人: soaringbird(2002-02-06 16:36:42), 站内信件
function GetFileVersion(FileName: string; var Major,Minor,Release,Build:Integer):Boolean;
var
  Buf, P: pChar;
  sVer: ^VS_FIXEDFILEINFO;
  i: LongWord;
begin
  i:= GetFileVersionInfoSize(PChar(FileName), i);
  New(sVer);
  P:= PChar(sVer);
  GetMem(Buf, i);
  ZeroMemory(Buf, i);
  Result:= False;
  if GetFileVersionInfo(pchar(FileName), 0, i, Pointer(Buf)) then
  begin
    if VerQueryValue(Buf, '\', Pointer(sVer), i) then
    begin
      Major := sVer^.dwFileVersionMS shr 16;
      Minor := sVer^.dwFileVersionMS and $0000ffff;
      Release := sVer^.dwFileVersionLS shr 16;
      Build := sVer^.dwFileVersionLS and $0000ffff;
      Result:= True;
    end;
  end;
  Dispose(P);
  FreeMem(Buf);
end;

[关闭][返回]