Wie kann ich die Version einer Datei (z.B. auch einer DLL) ermitteln?


Hier ein Beispiel für die API-Funktion "GetFileVersionInfo":

function GetBuildInfo(const AFilename:String; var V1,V2,V3,V4:Word):Boolean;
var VerInfoSize : Integer;
    VerValueSize : Integer;
    Dummy : Integer;
    VerInfo : Pointer;
    VerValue : PVSFixedFileInfo;
begin
  VerInfoSize := GetFileVersionInfoSize(PChar(AFilename),Dummy);
  Result := False;
  if VerInfoSize<>0 then begin
    GetMem(VerInfo,VerInfoSize);
    try
      if GetFileVersionInfo(PChar(AFilename),0,VerInfoSize,VerInfo) then begin
        if VerQueryValue(VerInfo,'\',Pointer(VerValue),VerValueSize) then begin
          with VerValue^ do begin
            V1 := dwFileVersionMS shr 16;
            V2 := dwFileVersionMS and $FFFF;
            V3 := dwFileVersionLS shr 16;
            V4 := dwFileVersionLS and $FFFF;
          end;
          Result := True;
        end;
      end;
    finally
      FreeMem(VerInfo,VerInfoSize);
    end;
  end;
end; {Peter Haas}
Delphi 1 Delphi 2 Delphi 3 Delphi 4
nicht getestet Version nicht betroffen getestet

siehe auch:


Delphi FAQ