2016-08-16 5 views
1

У нас есть веб-приложение и приложение Windows WPF для рабочего стола. Приложение Windows отправляет данные в webapp (размещен на лазури)автоматически обновляет настольное приложение

Пользователи загружают приложение с веб-сайта. Есть иногда новые версии настольных приложений.

Каков наиболее эффективный способ установки автоматических обновлений для настольных приложений? Мы используем github.

Я нашел «релизы» в github, но я не уверен, как уведомлять настольное приложение и как создать обновление. (Думаю, нам нужно проверять выпуск github при каждом запуске приложения. Нужно ли мне использовать Github api для этого?)

Какова лучшая структура репозитория для релизов?

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

ответ

6

Вы можете развернуть свои настольные приложения с помощью механизма ClickOnce Deployment. Это позаботится об обновлении программного обеспечения. Ваши пользователи загружают программное обеспечение с общедоступного интернет-сайта. Всякий раз, когда у вас есть новая версия, вы можете просто развернуть последние файлы развертывания в ссылке для загрузки. Дисковое приложение ClickOnce автоматически проверяет любую обновленную версию этой ссылки и предлагает пользователю загрузить и установить последнюю версию.

Из той же ссылке MSDN, одна из задач, решаемых с помощью развертывания ClickOnce содействует автообновление:

Трудности в обновлении приложений. С Microsoft Windows Установка установщика, всякий раз, когда приложение обновляется, пользователь должен переустановить все приложение; с развертыванием ClickOnce, вы можете установить обновления . Загружаются только те части приложения , которые были изменены, а затем полное, обновленное приложение переустанавливается из новой бок о бок.

+0

Это выглядит потрясающе! Спасибо. Позвольте мне попробовать, и я вернусь к вам. – user194076

+0

Зачем нравится downvote:) ??? –

+0

Я также не уверен, почему кто-то проголосовал за это - это именно тот сценарий, для которого был разработан ClickOnce. – slugster

1

Я искал удовлетворение тех же потребностей и наткнулся на эту библиотеку, которая может делать то, о чем вы просите; https://github.com/Squirrel/Squirrel.Windows

Существует много настроек, но то, о чем вы просите, не является тривиальным, но, возможно, вы можете получить некоторые идеи.

Для наших нужд; мы собираемся создать наш сервер сборки (teamcity) для создания MSI с использованием проекта Wix, после чего приложение загрузит и выполнит MSI. Как только мы пойдем на производство, мы переместим MSI-хостинг на еще одну корпоративную конфигурацию CDN.

+0

Это выглядит интересно. Особенно заголовок: Белка: это как ClickOnce, но работает. Я дам оба инструмента выстрел и дам вам знать! Большое спасибо. – user194076