Cómo recuperar el número de versión de la aplicación
Artículo por Club Developers · 31 diciembre 2005
5147 vistas
Para poder recuperar este tipo de información, será necesario tener activada la casilla "Include versión information in project" en Projet|Option|Version Info, sino, la función provocarÃa una violación de acceso
delphi
function ApplicationVersion: String var  VerInfoSize, VerValueSize, Dummy: DWord;  VerInfo: Pointer;  VerValue: PVSFixedFileInfo; begin  VerInfoSize := GetFileVersionInfoSize(PChar(ParamStr(0)), Dummy);  { dos soluciones }  if VerInfoSize <> 0 then  { - la información de versión está incluida }  begin   { guardamos la memoria necesaria para el puntero de la información de versión }   GetMem(VerInfo, VerInfoSize);   { recuperamos dicha información }   GetFileVersionInfo(PChar(ParamStr(0)), 0, VerInfoSize, VerInfo);   VerQueryValue(VerInfo, '\', Pointer(VerValue), VerValueSize);   { tratamos la información recuperada }   with VerValue^ do   begin    Result := IntTostr(dwFileVersionMS shr 16);    Result := Result + '.' + IntTostr(dwFileVersionMS and $FFFF);    Result := Result + '.' + IntTostr(dwFileVersionLS shr 16);    Result := Result + '.' + IntTostr(dwFileVersionLS and $FFFF);   end;   { liberamos la memoria }   FreeMem(VerInfo, VerInfoSize);  end  else   { - La versión no está incluida }   { lanzamos excepción }   raise EAccessViolation.Create('La información de versión no está incluida'); end;