Topic: Проверка актуальности версии программы у пользователей.

Добрый день.

Есть ли наработки проверки актуальности программы у пользователя (версионность).
Т.е. выдаем пользователям программу, а сами ее допиливаем. Родился новый релиз - меняем в табличке №версии.
У пользователя при следующем запуске сообщение - "У Вас не актуальная версия программы, обратитесь к разработчику". ну или что-то подобное.
Хотелось бы сделать как можно проще  (проще это не мой метод) поэтому и обращаюсь.

Re: Проверка актуальности версии программы у пользователей.

http://myvisualdatabase.com/forum/viewtopic.php?id=5089

Re: Проверка актуальности версии программы у пользователей.

Проще всего положить текстовый файл на сервер, где будет написан номер версии, например

12

CONST
    VERSION = 12; // текущая версия вашего проекта

procedure Form1_OnShow (Sender: TObject; Action: string);
var
    s: string;
begin
    s := HTTPGet('http://yoursite.com/version.txt');
    if ValidInt(s) then
    begin
        if StrToInt(s) > VERSION then
        begin
            ShowMessage('У Вас не актуальная версия программы, обратитесь к разработчику');
            Form1.Close;
        end;
    end;
end;

если на сервере измените данный файл и напишите там 13, то программа выдаст предупреждение и закроется.

Dmitry.

Re: Проверка актуальности версии программы у пользователей.

а можно как то зациклить проверку , например на каждые 5 минут , и программа закрывалась ?

Re: Проверка актуальности версии программы у пользователей.

hugo wrote:

а можно как то зациклить проверку , например на каждые 5 минут , и программа закрывалась ?

Перенесите проверку в таймер и установите интервал таймера на 5 минут.

Визуальное программирование: блог и телеграм-канал.

Re: Проверка актуальности версии программы у пользователей.

если не трудно , можно пример ? я новичок в этом деле , только учусь

Re: Проверка актуальности версии программы у пользователей.

CONST
    VERSION = 12; // текущая версия вашего проекта

procedure Form1_OnShow (Sender: TObject; Action: string);
var
  tmpTimer:TTimer;
begin
  // создаем таймер на 5 минут
  tmpTimer := TTimer.Create(Application);
  tmpTimer.OnTimer := @OnTimer;
  tmpTimer.Interval := 1000*60*5;  // 5 минут
  tmpTimer.Enabled := True;
  // первая проверка при запуске программы
  OnTimer(tmpTimer);
end;

procedure OnTimer(Sender: TObject);
var
    s: string;
begin
    s := HTTPGet('http://yoursite.com/version.txt');
    if ValidInt(s) then
    begin
        if StrToInt(s) > VERSION then
        begin
            TTimer(Sender).Enabled := False;
            ShowMessage('У Вас не актуальная версия программы, обратитесь к разработчику');
            Form1.Close;
        end;
    end;
end;
Визуальное программирование: блог и телеграм-канал.