Ver Mensaje Individual
  #2  
Antiguo 23-08-2010
luisdevis luisdevis is offline
Miembro
 
Registrado: mar 2004
Posts: 32
Reputación: 0
luisdevis Va por buen camino
Prueba este código : Usa el Unit Windows

Function TForm1.DaVersion : String;
{Se pueden pedir los siguientes datos:
CompanyName
FileDescription
FileVersion
InternalName
LegalCopyright
OriginalFilename
ProductName
ProductVersion
}

type
PaLeerBuffer = array [0..MAX_PATH] of char;

var
Size, Size2 : DWord;
Pt, Pt2, Pt3 : Pointer;
Mensa,Idioma : string;
begin

Size := GetFileVersionInfoSize(PChar (Application.Exename), Size2);
if Size > 0 then
begin
GetMem (Pt, Size);
GetFileVersionInfo (PChar (ParamStr (0)), 0, Size, Pt);
VerQueryValue( Pt, '\VarFileInfo\Translation',Pt2, Size2);
Idioma:=IntToHex( DWord(Pt2^) ,8 );
Idioma:=Copy(Idioma,5,4)+Copy(Idioma,1,4);

VerQueryValue( Pt,Pchar('\StringFileInfo\'+Idioma+'\'+'FileVersion'),Pt2, Size2);
if Size2 > 0 then mensa := mensa +'Version: '+Copy(PaLeerBuffer(Pt2^),1,Size2)+#13+#13;
Result := Copy(PaLeerBuffer(Pt2^),1,Size2);
FreeMem (Pt);
end;
end;
Responder Con Cita