• 0
chaplin.u@gmail.com

VersionCode

Вопросы

2 ответа на этот вопрос

  • 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;

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

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

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