Автообновление с использованием Google Code - PullRequest
1 голос
/ 22 апреля 2011

Я хочу, чтобы само программное обеспечение самообновлялось, но у меня нет ни обширных навыков веб-дизайна, ни какого-либо доступного веб-сайта / онлайн-хостинга.Я хочу сделать это в C # / WPF.

Так что мне было интересно, может ли быть способ сделать сервис автообновления с использованием кода Google, что-нибудь чистое.Я предполагаю, что я не первый, кто думает об этом.

Я бы сделал это следующим образом:

1) Используйте веб-браузер (тихо) и перейдите к моему коду Googleстр.На этой странице я бы поставил поле, в котором я ввожу номер последней версии.(Мне нужно как-то найти этот номер в содержимом страницы.)

2) Я сравниваю этот номер с установленной в данный момент версией (например, я мог бы поместить CURRENT_VER_NUMBER в * .txt в папке программного обеспечения).

3) Если я решу, что доступна новая версия, я загружаю ее с вкладки «Загрузки» моего проекта кода Google, распаковываю ее, перезаписываю файлы в каталоге установки и перезапускаю приложение.

Прежде всего, это будет работать нормально?Когда я это представляю, это звучит как грязный код.

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

И последнее, но не менее важное: если приложение уже запущено для проверки обновлений, я не могу перезаписать файлы без выхода из приложения, значит ли это, что мне нужносделать какое-нибудь «главное приложение», которое выполняет проверку перед запуском моего программного обеспечения?Звучит грязно тоже = /

Любые пожелания приветствуются,

Хорошего дня.

Ответы [ 3 ]

3 голосов
/ 24 апреля 2011

Предлагаю вам взглянуть на ClickOnce. Вам не нужно создавать веб-страницу. Вам нужно только разместить 2 файла: файл .manifest, который содержит информацию о вашем приложении (версия, имя и ссылка на пакет, содержащий ваше приложение) и последнюю версию пакета вашего приложения. Единственное, что вам нужно сделать, это разместить эти 2 файла и поместить ссылку на вашей странице Google Code на этот файл .manifest. Пользователи переходят по этой ссылке, и .net автоматически устанавливает или проверяет наличие последней версии и обновляет ее при необходимости.

2 голосов
/ 04 мая 2011

Возможно, вы захотите взглянуть на библиотеку, которую я написал и выпустил с открытым исходным кодом, чтобы сделать это прозрачным образом - включая внешнее приложение обновления для фактического холодного обновления.См. http://www.code972.com/blog/2010/08/nappupdate-application-auto-update-framework-for-dotnet/

Код: http://github.com/synhershko/NAppUpdate (по лицензии Apache 2.0)

1 голос
/ 24 апреля 2011

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

Вам нужно проверить: https://code.google.com/p/theomniscientchimp/, где доступен полный источник, и, конечно, настроить его для вашего проекта.

Спасибо за комментарии к моему оригинальному сообщению, я почувствовал уверенность, что все делал правильно =)

...