Перейти к содержанию
Fire Monkey от А до Я
  • 0

VersionCode


chaplin.u@gmail.com

Вопрос

Рекомендуемые сообщения

  • 1
18 часов назад, chaplin.u@gmail.com сказал:

Как получить VersionCode чтобы направить в label ?

(с) не помню чье:
 

var
  FProgramVersion: string;

function GetProgramVersion: string;
var
  {$IFDEF ANDROID}
  PackageManager: JPackageManager;
  PackageInfo: JPackageInfo;
  {$ENDIF}
  {$IFDEF IOS}
  s: MarshaledAString;
  {$ENDIF}
  {$IFDEF MSWINDOWS}
  Exe: string;
  Size, Handle: DWORD;
  Buffer: TBytes;
  FixedPtr: PVSFixedFileInfo;
  {$ENDIF}
begin
  if FProgramVersion <> '' then
    begin
      Result := FProgramVersion;
      exit;
    end;
  {$IFDEF ANDROID}
  PackageManager := TAndroidHelper.Context.getPackageManager;
  PackageInfo := PackageManager.getPackageInfo(TAndroidHelper.Context.getPackageName, 0);
  Result := JStringToString(PackageInfo.versionName);
  {$ENDIF}
  {$IFDEF IOS}
  s := TNSString.Wrap(CFBundleGetValueForInfoDictionaryKey(CFBundleGetMainBundle, kCFBundleVersionKey)).UTF8String;
  Result := string(s);
  {$ENDIF}
  {$IFDEF MSWINDOWS}
  Exe := ParamStr(0);
  Size := GetFileVersionInfoSize(PChar(Exe), Handle);
  if Size = 0 then
    begin
      Result := 'Unknown';
      exit;
    end;
  SetLength(Buffer, Size);
  if not GetFileVersionInfo(PChar(Exe), Handle, Size, Buffer) then
    begin
      Result := 'Unknown';
      exit;
    end;
  if not VerQueryValue(Buffer, '\', Pointer(FixedPtr), Size) then
    begin
      Result := 'Unknown';
      exit;
    end;
  Result := Format('%d.%d.%d.%d', [LongRec(FixedPtr.dwFileVersionMS).Hi, // major
    LongRec(FixedPtr.dwFileVersionMS).Lo, // minor
    LongRec(FixedPtr.dwFileVersionLS).Hi, // release
    LongRec(FixedPtr.dwFileVersionLS).Lo]); // build
  {$ENDIF}
  FProgramVersion := Result;
end;

 

Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...