Сделал программу, предназначенную для автоматической проверки обновлений других программ. Сделал для использования в своих проектах, но, может быть, кому-нибудь ещё пригодится :)
Актуальна будет для тех, кто пишет свои программы и распространяет их с собственного сайта (ну или сайта, на котором можно поменять какую-нибудь страничку). То есть, как раз для тех, у кого есть какой-нибудь свой проект :)
Принцип работы простой - программа принимает в командной строке текущую версию той программы, наличие обновлений для которой надо проверить, адрес сайта, на котором можно посмотреть номер последней версии программы, и адрес странички, с которой юзер сможет скачать новую версию. Если новая версия есть - выдаёт пользователю сообщение и предлагает перейти на сайт для загрузки новой версии. Если нет - может тихо завершить работу, а может выдать сообщение о том, что установлена последняя версия (это регулируется также параметром командной строки).
Сделано всё на Qt 4.
Может работать через прокси.
Для многих дистрибутивов, конечно, такая вещь не нужна - программы обновляются автоматически из репозиториев. Но может подойти для кроссплатформенных программ, у которых есть версии для Windows (как, например, мои программы). Также может быть полезной для программ, распространяемых в виде самостоятельных пакетов в форматах deb, rpm или ещё каком-нибудь - без включения в репозиторий какого-то дистрибутива.
Может, кому-нибудь ещё пригодится просто как пример кода, на основе которого можно сделать свою программу, работающую с информацией, получаемой через интернет. Код под лицензией BSD, так что можно использовать и в коммерческих проектах.
Посмотреть, скачать можно на сайте: http://life-warrior.org/programs/lwupchecker.html
Исходный код скачать можно в виде архива там же на сайте, или получить через контроль версий fossil из online-репозитория:
http://chiselapp.com/user/cansee/repository/LWUpChecker/index
LinuxForum.Fans
Лёгкая проверка обновлений своей программы со своего сайта
Автор: CanSee
1 сообщений
1815 просмотров
Войдите или зарегистрируйтесь, чтобы ответить.