Делаем картинку более реалистичной, уроки фотошопа

Для более приближенного к настоящему размытию попробуем на этом практическом уроке использовать Lens Blur filter или иными словами Размытие, которое будем использовать, когда объект будет содержать незначительную глубину резкости. [Подробнее >>>]

Видеонаблюдение дома и в квартире

Если вы нуждаетесь в постоянном контроле своих гостей, самый наилучший вариант - это установка специального домофона с функцией видео. Такая система без проблем расширяется в нужные вам стороны. [Подробнее]

Тизерный обмен трафиком

Продажей трафика, еще называют «арбитраж трафика». Такое понятие появилось совсем недавно, это слив трафика с одного сайта на другой. Но такое понятие подразумевает то, что трафик вы переливаете с целью его монетизировать. Сегодня об этом я Вам и расскажу. [Подробнее >>>]


Поддержка обновлений в программе на Delphi

24-05-2018

Эта статья посвящена вопросам реализации поддержки обновлений в программе. Я вам расскажу как сделать проверку наличия новой версии программного обеспечения. Возможно вы это сделаете по другому, но я расскажу как это делаю я.

На сегодняшний день, практически каждая популярная программы имеет такой менеджер обновлений. Согласитесь, что это очень удобно для пользователя и разработчика, т.к. он не задумывается о том, как сообщить о выходе и распространении новой версии программного продукта. Для пользователя это удобно тем, что обновление можно скачать в любое время, не нужно заходить на сайт и смотреть последние новости. Это очень сильно экономит время.

Для наших целей достаточно одного ftp-сервера с 50 Мб свободного места на жестком диске. На нем будет храниться дистрибутив новой версии программы, либо модули, которые необходимо обновить. Можно так же использовать файлообменник или в крайнем случае e-mail почту.

К выбору хранилища обновлений нужно подойти серьезно. Ссылка на директорию для обновления должна быть постоянной. Дело в том, что если вы являетесь разработчиком shareware программ и у вас уже есть определенная аудитория, которая постоянно пользуется и обновляет ваш программный продукт, то ваш продукт не смогут скачать по новой ссылке, т.к. она будет зашита в программу. Но ftp-сервер найти сейчас не проблема, и практически любой хостинг предоставляет такую услугу.

Теперь перейдем к делу. Создайте папку на ftp-сервере и назовите ее update. В ней будет храниться текстовый файл с записью последней версии программы, а так же инсталляционный пакет. После этого можно закачать все файлы на сервер и добавить запись последней версии вашей программы, например 1.0.1.

Следующим шагом нужно добавить поддержку обновления в саму программу. Добавьте в главное меню своей программы элемент «Обновить». Хранить текущую версию программы можно в ключе реестра или ini/txt файле. Это уже на ваше усмотрение.

Теперь нужно добавить реализацию проверки обновления программы. При нажатии на кнопку «Обновить», выводим сообщение о текущей версии программы и доступных обновлениях. Если версия программы, которая установлена у пользователя на компьютере, не совпадает с записью в текстовом файле на фтп-сервере, то происходит загрузка обновления. В противном случае программа выводит сообщение о том, что текущая версия является последней и обновление программы не требуется.

Что касается ссылки на обновление, то я предлагаю вот такой вариант: http://site/updates/update.exe. По этой ссылке производиться загрузка exe файла, после этого он заменяется на старый exe файл. Эта ссылка не должна меняться, об этом я писал выше.

Можно сделать еще проще. Программа проверяет наличие последней версии и в случае ее наличия, выдает ссылку на сайт для скачивания новой версии. Так, например реализовано в ICQ клиенте QIP. Разработчики поленились реализовать обновление в автоматическом режиме.

Для загрузки обновления будем использовать компонент TidHTTP. Добавьте на форму кнопку TButton, по нажатию на нее будет происходить проверка версии.

Листинг программы.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

procedure TForm1.Button1Click(Sender: TObject);

var

version:WideString;

begin

try

version:=IdHTTP1.Get('http://craft-code.ru/update/version.txt');

if version=Label1.Caption then

begin

Application.MessageBox('У Вас самая новая версия программы','Внимание',MB_OK);

end

else

begin

Application.MessageBox('Появилась новая версия программы, ее можно скачать'+#13#10+'http://craft-code.ru/update/project.exe','Внимание',MB_OK);

end;

except

on e:Exception do

//-//-//-//-//-//

end;

end;

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


Смотрите также:
 Отправка e-mail в Delphi — Работа с компонентами IdPOP3 и IdSMTP
 8 вещей, которые вам надо сделать
 Эксперимент по НЧ. Часть 2. День 3.
 Google призывает общество бороться со спамом
 Идея для заработка на файлообменниках

Добавить комментарий:
Введите ваше имя:

Комментарий:

Защита от спама - решите пример:

Новое в нашем блоге:

Возможно ли пользоваться редактором Photoshop не только на стационарных компьютерах, но и на сенсорных планшетах? До недавнего времени это не предоставлялось возможным, однако технологии продолжают развиваться....

Программисты, в основном начинающие, интересуются о том, какой язык программирования выбрать. Причем всегда хотят выучить один универсальный язык, на котором можно программировать абсолютно все..

Компания Microsoft представила новую мобильную операционную систему для смартфонов — Windows Phone 8. На презентации обозначились две ключевые новости.