| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Обновление программы через интернет |
| Автор: Tamerlaan 29.8.2007, 17:29 |
| Почитал тут http://excode.ru/art1800p1.html статью, хочу написать обновление для программы, но есть пару вопросов: 1.А если изменений нет в программе, то как это проверить? 2.Как организовать прогресс обновления и скорость скачивания? 3.Как организовать список скачаных файлов?(т.е. мне нужно, чтобы юзверь видел с какой версии и до какой обновился файл, сейчас у меня в программе 1 exe и 1 dll и папки с файлами для проги, желательно, чтобы файлы тоже обновлялись, файлы лежат в подпапках, мне нужно, чтобы юзверь видел ход обновления, скорость и версии файлов считывал и юзверю сообщал, какие были старые, а какие они стали в компоненте отдельном) 4.Также вопрос, как организовать, чтоб можно было создать резервную копию программы и восстановить её оттуда Помогите, плиз. Спасибо. Добавлено через 10 минут и 4 секунды Посмотрел программу DRKB. Вот там есть модуль обновления, примерно такой я и планировал сделать. Помогите пожалуйста |
| Автор: Alexeis 29.8.2007, 17:42 |
| 1) Сначала читать с сайта версию программы и сверять с текущей версией. 2) Делфийские компоненты сами генерят события прогресса, нужно только установить обработчик и в нем изменять значения прогрессбара. 3) Обойти дерево каталогов программы и составить список файлов. Кроме того на сервере можно хрнить список файлов которые изменились в каждой новой версии. 4) Сделать отдельный каталог и сопировать туда себя и все свои файлы. Аналогично при восстановлении скопировать себя обратно, только это должна делать не сама программа, а дополнительная програмка для обновления или скрипт в файле типа cmd или bat. |
| Автор: Tamerlaan 29.8.2007, 17:43 |
| Может сделать программу для сервера и клиента и с помощью их проверять?Опишите плиз поподробнее Добавлено через 3 минуты и 54 секунды Если можно - напишите плиз на ICQ 253186806 |
| Автор: lukas 29.8.2007, 17:53 |
| Tamerlaan, видишь там цикл Repeat вот туда и прикручивай процесс скачивания... предварительно затащив в отдельный процесс.. |
| Автор: Alexeis 29.8.2007, 17:53 |
| А на сервере зачем программа? На сервере достаточно разместить маленький файлик типа Version_Info.txt скачать его и получить информацию о обновленных файлах. Добавлено через 2 минуты и 11 секунд lukas, этого уже давно не требуется. Компоненты Indy сами работают с потоками если их настроить, потому не нужно самому ничего создавать и сами оповещают о прогрессе. |
| Автор: Tamerlaan 29.8.2007, 17:56 |
| Я с файлами почти не работал, я только с БД и ИнтерБэйс, сеть и файлы для меня новое - может подскажете справку или ещё что-нибудь? |
| Автор: Tamerlaan 29.8.2007, 18:51 |
| Я сделал организацию скачивания файлов, но как добавить остальное(прогресс и т.п.) ненаю, плиз помогите, просто срочно нужно |
| Автор: Lence 29.8.2007, 23:29 | ||||
Самый простой тебе способ. Берешь все свои обновления - пакуешь в архив/лепишь новый инстал/ итд. Но все в одном файле. Бросаешь этот файл на сайте. Делаешь страничку update.html где ты пишешь
и пишешь код ... че он делает - лезит на старицу update.html, вырезает в переменные линк и версию... версию тупо ставрнивает со стрингом и если не равны - значит вызывается шелэкзекут и тянется сам файл. Пользователь же сам сохраняет его где ем нада ... исталирует/распаквывает поверх старой.
|