Подскажите существующие методы и алгоритмы обновления программ

программирование алгоритм net обновление

Задача:
Обновить (любую) программу по функционалу
Способы - либо это будет модульное обновление, то есть в виде отдельно подключаемых компонентов, либо другая технология автоматического обнаружения, скачивания и обновления существующей программы

Если кто может поделиться полезными ссылками на данную тему - очень прошу

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

Примечание:
to maxim:
это конечно все замечательно и спасибо за наводку - буду разбираться..
но все же это -
1. очередная впарина от майкрософта
2. это довольно сложная система аналог которой я не напишу не то чтобы за семестр, а лет за 5 :)
3. нужно что то более проще, быстрее и не обязательно связанное с обновлением через интернет - то есть это может быть простая технология а-ля заплатка(или патч) запустив который изменит(добавит) стандартный функционал приложения... каким способом, я честно говоря могу только догадываться...
Ответы:
смотря что нужно обновить. если это какие-то бинарные файлы (исполняемые или динамыческие библиотеки), то только замена файла целиком. А если это какие-то ресурсы (куча картинок в обном файле), то зная структуру файла можно заменить те или иные куски файла какой-нибудь программой-апдейтом, которая при запуске автоматически все сделает сама.
Посмотрите, как устроена, например, Miranda IM. Практически весь функционал реализован через плагины. Соответственно, добавление, скажем, поддержки нового протокола, сводится к добавлению .dll-файла.
можно попробовать побитово сравнивать исходные файлы, писать в какой-нибудь файлик информацию об изменениях, а на стороне клиента уже эти изменения производить патчером.
только анализировать изменения нужно основательно, чтобы с случае
141245678->141256784 он не предлагал заменить все 5 последних байт


16 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

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

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.