Регистрация Главная Сообщество
Сообщения за день Справка Регистрация
Навигация
Zhyk.org LIVE! Реклама на Zhyk.org Правила Форума Награды и достижения Доска "почета"

Ответ
 
Опции темы
Старый 21.01.2012, 19:11   #1
 Разведчик
Аватар для 3jhlty3
 
3jhlty3 на правильном пути
Регистрация: 17.12.2011
Сообщений: 14
Популярность: 24
Сказал(а) спасибо: 50
Поблагодарили 7 раз(а) в 6 сообщениях
Отправить сообщение для 3jhlty3 с помощью Skype™
 
По умолчанию Лаунчер обновлений для своей программы(Updater)

Сегодня я попробую объяснить как можно сделать хорошийUpdater(Лаунчер обновлений) Для вашей программы.
Я собрал несколько разных способов и сделал очень хороший лаунчер)
И так приступим:
1) Создаём новую Form
2) Помещаем на неё:
2.1) Label1 и Label2 из вкладки Standart
2.3) Button1 и Button2(Место их можно использовать всё что вам угодно, главное чтобы в Event было событие OnClik)
2.3) IdFTP из вкладки lndy Clients
2.4) Помещаем на Form1 компонент IdHttp
2.5) Помещаем на Form1 компонент Label

3) Теперь займёмся кодами...
3.1) Код для проверки версии программы:
Вставлять в Form1 событие OnCreate.

Код:
var
 version:WideString; 
begin
   try
    version:=IdHTTP1.Get('ссылка'); //Это файл с версией который будет находится на сайте то-есть в файле Version вы должны написать текущую версию программы
    if version=Label1.Caption then //В Label1 название это версия программы на данный момент... ну то-есть если вы написали в Label, что у вас клиент версии V.1.0, а в файле Version на сервере другая версия он попросит вас сделать обновление...
     begin

     end
    else
     begin
      if (not Assigned(Form2)) then   // проверка существования Формы (если нет, то
       Form2:=TForm2.Create(Self);    // создание Формы)
   Form2.Show; // (или Form2.ShowModal) показ Формы
     end;
   except
    on e:Exception do
     //-//-//-//-//-//
   end;


 
end;
3.2) Работа с формой 2(Form2)
3.2.1) Даём название Form2 я советую называть:
Менеджер Обновлений, Ланучер Обновлений Updater.. ну это на ваше усмотрение...
3.2.2) Label1 на Form2 называем:"Появилась новая версия программы.",
А Label2:"Хотите загрузить обновление?"
3.2.3) Button1 называем:"Да",
а Button2:"Нет"

И если не кто не понял должно получиться так:
Появилась новая версия программы.
Хотите загрузить обновление?
Да Нет

3.2.4) Дальше в событиях Button1(Да) в OnClik Прописываем:
Код:
idFTP1.Username:= 'Name'; //
idFTP1.Password:= 'Pass'; //
idFTP1.Host:= 'Host'; //
idFTP1.Passive:= True;
if idFTP1.Connected then
idFTP1.Disconnect
else
try

idFTP1.Connect(True);
except
on E : Exception do
ShowMessage('Ошибка подключения: '+E.Message);
end;
if idFTP1.Connected then
try
idFTP1.Get('Ссылка на обновление', 'С каким именем оно сохранится', True);
except
on E : Exception do
ShowMessage('Ошибка скачивания файла: '+E.Message);
end;
end;
3.2.5) В событиях Button2(Нет) B Onclik прописываем:
Цитата:
Form2.Close


4) Всё)) Готова)) Можно и доработать... Ну что-бы при скачивании удалялась старая версия, а новая переименовывалась... Я доработаю сам и исправлю))
Если буду вопросы пишите в тему отвечу обязательно!
________________
Глава Ордена Чёрных Рыцарей

Последний раз редактировалось 3jhlty3; 21.01.2012 в 19:15.
  Ответить с цитированием
2 пользователя(ей) сказали cпасибо:
Shook† (21.01.2012), werseche (14.02.2012)
Старый 03.04.2012, 09:29   #2
Заблокирован
 Пехотинец
Аватар для Сверхчеловек
 
Сверхчеловек скоро будет известенСверхчеловек скоро будет известенСверхчеловек скоро будет известен
Регистрация: 28.01.2012
Сообщений: 74
Популярность: 274
Сказал(а) спасибо: 33
Поблагодарили 14 раз(а) в 14 сообщениях
 
По умолчанию Re: Лаунчер обновлений для своей программы(Updater)

Ты код для проверки версии рабочий выложил?
У меня не получается проверить.
  Ответить с цитированием
Старый 03.04.2012, 15:52   #3
 Пехотинец
Аватар для Zo_Om4eG
 
Zo_Om4eG на правильном пути
Регистрация: 20.12.2010
Сообщений: 58
Популярность: 50
Сказал(а) спасибо: 22
Поблагодарили 36 раз(а) в 15 сообщениях
Отправить сообщение для Zo_Om4eG с помощью Skype™
 
По умолчанию Re: Лаунчер обновлений для своей программы(Updater)

WoW_pr0, Все рабочее, где указано 'ссылка' - там ваша ссылка для проверки обновления. Предположим у меня хост юкоз, я проверяю оттуда:
Цитата:
var version:string
version:=IdHTTP1.Get('http://lifeinprison.ucoz.ru/MailSpam/4543484F31383132313031393630.txt');

Verison вернет значение -
Цитата:
+4543484F313831323130313936304D61696C5370616D6C696 665696E707269736F6E5A6F5F4F6D346547224A47704D37615 E262823292B5F534B21265F292D21242B2B534144214024295 F40214A4453415F2B21

  Ответить с цитированием
Старый 03.04.2012, 18:31   #4
Заблокирован
 Пехотинец
Аватар для Skrillex3
 
Skrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компанииSkrillex3 душа компании
Регистрация: 23.03.2012
Сообщений: 83
Популярность: 908
Сказал(а) спасибо: 102
Поблагодарили 144 раз(а) в 61 сообщениях
Отправить сообщение для Skrillex3 с помощью Skype™
 
По умолчанию Re: Лаунчер обновлений для своей программы(Updater)

зачем использовать FTP? Можно было подключить UrlMon и скачать программу 1 строчкой
  Ответить с цитированием
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Статья] Делаем Updater до программы с помощью Indy. Delphi. VeTaL_UA Pascal/Delphi 33 03.06.2012 17:06
L2 Updater v 1.0 - программа для создания Updater'a n1cekkk Дополнения к серверам 0 12.08.2011 19:38

Заявление об ответственности / Список мошенников

Часовой пояс GMT +4, время: 08:23.

Пишите нам: [email protected]
Copyright © 2024 vBulletin Solutions, Inc.
Translate: zCarot. Webdesign by DevArt (Fox)
G-gaMe! Team production | Since 2008
Hosted by GShost.net