ekemov
Advanced Member | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору killerbeanjeka У меня обновление происходит через инсталятор, мне просто много нужно за раз обновлять данных, а у отчётов нет понятия версия. Содержимое deanery.inf [update] newversion=1,1,0,0 ;новая версия обновления localversion=deanery.exe ;что обновляем descr=Новая версия готова к загрузке ;описание [files] count=1 ;количество обновляемых файлов [file1] url=http://mtd.bspi.ru/mtd/laboratoria/deanery_update.exe ;адрес для обновления descr=Обновление программы, версия 1.1.0.0 ;описание filesize=4563263 ;размер файла [Application] appupdate=1 ;сколько обновляем appname=deanery.exe ;что обновляем appcomps=deanery_update.exe ;обновляемы файл скаченный с сервера global_update:='http://www.rabbit-company.ru/deanery/update/deanery.inf'; WebUpdate1.URL:=global_update;//задаю адрес для обновления Я перед показом главной формы проверяю обновление procedure Tglavnay_forma.FormShow(Sender: TObject); begin if Length(global_update)>5 then begin //проверяю нужно ли обновление obnovlenie:='1'; //то что началось обновление WebUpdate1.DoUpdate; // проверяю обновление if WebUpdate1.NewVersionInfo>WebUpdate1.CurVersionInfo then close; //это если отказались от обновления.т.к. обновление может //критичным end; end; procedure Tglavnay_forma.WebUpdate1CustomValidate(Sender: TObject; Msg, Param: string; var Allow: Boolean); begin if (Allow=true) AND (obnovlenie='1') AND //проверяем запуск обновления если оно нужно(WebUpdate1.NewVersionInfo>WebUpdate1.CurVersionInfo) then begin //проверка версии obnovlenie:='2'; //это то что обновление началось(вдруг //если юзер сбрость обновление и тогда //нужно будет закрыть программу webupdatewizard1.Execute ; //запускаем мастер // обновления end; end; если что то непятно пиши, чем смогу помогу. |