Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Автоматическое обновление информации о версии Delphi в информационном окне "О программе"

Delphi , Программа и Интерфейс , IDE и Компилятор

Вопрос, поднятый Ian Branch, заключается в поиске способа автоматического обновления информации о версии компилятора Delphi, которая отображается в информационном окне "О программе" приложений. Вместо ручного обновления версии, Ian хочет использовать встроенные средства Delphi для получения этой информации.

Решение с использованием CompilerVersion

Исходя из контекста, предложенное решение от Anders Melander заключается в использовании константы CompilerVersion, определенной в модуле system.pas. Однако, как отметил Ian, данный метод возвращает только числовой код версии, который не является интуитивно понятным для пользователя.

Альтернативное решение с использованием GetRTLVersion

DelphiUdIT предложил использовать функцию GetRTLVersion, доступную в модуле system.pas начиная с версии Athens 12. Эта функция возвращает информацию о главной и дополнительной версиях RTL, но не включает информацию о патчах.

Использование сторонних библиотек

Limelect предложил использовать библиотеку TjvVersionInfo из JVCL для получения версии приложения, но отметил, что это возвращает версию самого приложения, а не версии Delphi. Также был предложен собственный код, который возвращает версию приложения, но не версию Delphi.

Комбинированное решение

Исходя из обсуждения, можно предложить следующий подход:

  1. Использовать функцию GetRTLVersion для получения основной версии Delphi.
  2. Использовать предопределенные константы для определения дополнительной версии (например, RTLVersion121, RTLVersion122, и т.д.).
  3. Дополнить решение кодом, который определит наличие патчей (если таковые имеются).

Пример кода на Object Pascal, который может быть использован в вашем приложении:

program ShowDelphiVersionInfo;

{$APPTYPE CONSOLE}

uses
  System.SysUtils,
  System.Classes;

function GetDelphiVersion: string;
var
  CompilerVersion: Double;
begin
  CompilerVersion := CompilerVer;
  if CompilerVersion > 0 then
  begin
    case CompilerVersion of
      9.0: Result := 'Delphi 2';
      10.0: Result := 'Delphi 3';
      12.0: Result := 'Delphi 4';
      13.0: Result := 'Delphi 5';
      14.0: Result := 'Delphi 6';
      15.0: Result := 'Delphi 7';
      16.0: Result := 'Delphi 2005';
      17.0: Result := 'Delphi 2006';
      18.0: Result := 'Delphi 2007';
      19.0: Result := 'Delphi 2009';
      20.0: Result := 'Delphi 2010';
      21.0: Result := 'Delphi XE';
      22.0: Result := 'Delphi XE2';
      23.0: Result := 'Delphi XE3';
      24.0: Result := 'Delphi XE4';
      25.0: Result := 'Delphi XE5';
      26.0: Result := 'Delphi XE6';
      27.0: Result := 'Delphi 10 Seattle';
      32.0: Result := 'Delphi 10.2 Tokyo';
      33.0: Result := 'Delphi 10.3 Rio';
      34.0: Result := 'Delphi 10.4 Sydney';
      35.0: Result := 'Delphi 11 Alexandria';
      36.0: begin
        if Declared(RTLVersion121) then
          Result := 'Delphi 12.1 Athens'
        else if Declared(RTLVersion122) then
          Result := 'Delphi 12.2 Athens'
        else if Declared(RTLVersion123) then
          Result := 'Delphi 12.3 Athens' // Предполагаемое определение
        else
          Result := 'Delphi 12.0 Athens';
      end;
    else
      Result := 'Неизвестная версия компилятора';
    end;
  end
  else
    Result := 'Ошибка определения версии компилятора';
end;

begin
  Writeln(GetDelphiVersion);
  Readln;
end.

Этот код необходимо доработать, добавив логику определения патчей, если это необходимо, и интегрировать в ваше приложение, чтобы отображать информацию в информационном окне "О программе".

Создано по материалам из источника по ссылке.

Вопрос состоит в поиске способа автоматически обновлять информацию о версии компилятора Delphi, отображаемую в информационном окне 'О программе' приложений, используя встроенные средства Delphi.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: IDE и Компилятор ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-02-05 15:51:09/0.003803014755249/0