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.