Ver Mensaje Individual
  #4  
Antiguo 21-03-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Paulao.

Una forma posible sería:
Código Delphi [-]
...
type
  TMiClase = class(TObject)
  private
    FAppName: string;
    function GetAppVersion: string;
  public
    property Version: string read GetAppVersion write FAppName;
  end;
...

implementation
...

function TMiClase.GetAppVersion:string;
var
 Size, Size2: DWord;
 Pt, Pt2: Pointer;
begin
  Size := GetFileVersionInfoSize(PChar(FAppName), Size2);
  if Size > 0 then
  begin
    GetMem (Pt, Size);
    try
      GetFileVersionInfo (PChar (FAppName), 0, Size, Pt);
      VerQueryValue (Pt, '\', Pt2, Size2);
      with TVSFixedFileInfo (Pt2^) do
      begin
        Result:= ' Ver '+
                 IntToStr (HiWord (dwFileVersionMS)) + '.' +
                 IntToStr (LoWord (dwFileVersionMS)) + '.' +
                 IntToStr (HiWord (dwFileVersionLS)) + '.' +
                 IntToStr (LoWord (dwFileVersionLS));
      end;
    finally
      FreeMem (Pt);
    end;
  end;
end;
...

Llamada:
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  MC: TMiClase;
begin
  MC:= TMiClase.Create;
  MC.Version:= 'C:\Program Files\Borland\Delphi7\Bin\Delphi32.exe';
  ShowMessage(MC.Version);
end;
Para obtener la versión utilizé la función sugerida por el amigo rgstuamigo en el post Cargar Version en el Caption del Form .


Un saludo.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita