Подтвердить что ты не робот

Предложите метод автоматического обновления моей программы на С#

Мне нужно сохранить программу, которую я написал в актуальном состоянии, это произойдет часто в течение следующего года или около того, это нужно сделать через Интернет. Где бы вы посоветовали мне начать, есть ли общие методы? Любые предложения приветствуются.

Спасибо

4b9b3361

Ответ 1

Довольно хорошо не достаточно хорошо:)

NAppUpdate - это библиотека с открытым исходным кодом, которую я написал для этого. Общая идея состоит в том, чтобы иметь максимальную гибкость при наименьших затратах.

Итак, интеграция очень проста, и библиотека делает для вас почти все, включая операции синхронизации. Он также очень гибкий и позволяет определить, какие задачи выполнять и на каких условиях - вы устанавливаете правила. Последнее, не в последнюю очередь - поддержка любого источника обновлений (веб, BitTorrent и т.д.) И любого формата подачи - независимо от того, что не реализовано, вы можете просто написать сами.

Холодные обновления (требующие перезапуска приложения) также поддерживаются и выполняются автоматически, если для задачи не задано "горячая замена".

Все это сводится к одной DLL, размер которой меньше 70 КБ.

Подробнее на http://www.code972.com/blog/2010/08/nappupdate-application-auto-update-framework-for-dotnet/

Код находится в http://github.com/synhershko/NAppUpdate (лицензировано по лицензии Apache 2.0)

Ответ 2

ClickOnce идеально подходит для такого рода сценариев.

Ответ 3

Существует такая большая структура, называемая NetSparkle а также этот DotNetUpdater

Я еще не использовал их, но надеюсь сделать это очень скоро. Вы можете попробовать.

Ответ 4

ClickOnce - хорошее решение, но если вы хотите иметь полный контроль, вы можете использовать свой собственный. Я бы предложил опросить веб-сервис, чтобы узнать, доступны ли более поздние версии, загрузка необходимых файлов в бок о бок и использование пусковой установки (или обновления ярлыка) для автоматического запуска последней версии.

Это немного сложно, но подходит для ситуаций, в которых приложение может работать, и поэтому не может быть перезаписано.