2009-10-08 2 views
0

[EDIT]ClickOnce Еще Обновление Автоматически Despte Имея Параметры обновления Off

Решение, как представляется, назначая PersistUpdateCheckInfo ложь:

UpdateCheckInfo updateInfo = null; 

...

updateInfo = deployment.CheckForDetailedUpdate(false); 

[/ EDIT]

У меня есть (более или менее) идеальная ручная система для обновлений с использованием API ClickOnce. Я говорю идеально, потому что пользователю представлена ​​форма, объясняющая, что такое обновление, и почему они должны его установить. Я ненавижу автоматическую систему ClickOnce. Пользователь понятия не имеет, что изменится в программе!

Во всяком случае, несмотря на наличие:

1) Опубликовать | Обновления: «Приложение должно проверять наличие обновлений» выключено (хотя у меня есть место обновления, которое, как мне кажется, требуется для ручных обновлений).

2) В мастере публикации «Приложение не будет проверять наличие обновлений» ON

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

Если вы можете помочь в этом, его можно было бы оценить. Спасибо!

+0

Ницца! Это легче читать, если вы отправляете ответ на свой вопрос. Плюс я мог проголосовать за это :) – andyhammar

ответ

-1

В случае, если вы все еще устали от ClickOnce, вот решение с открытым исходным кодом, которое я написал для удовлетворения конкретных потребностей, которые у нас были для WinForms и приложений WPF. Общая идея состоит в том, чтобы иметь максимальную гибкость при минимальных возможных накладных расходах.

Итак, Интеграция очень проста, и библиотека делает практически все для вас, включая операции синхронизации. Также очень гибкий и позволяет определить, какие задачи выполнять и на каких условиях - вы создаете правила (или используете некоторые из них уже есть). Последнее, не в последнюю очередь - поддержка любых обновлений источник (web, 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)

Я планирую распространив его больше, когда я получу еще некоторое время, но, честно говоря, вы должны быть в состоянии быстро повышайте его самостоятельно для того, что в настоящее время не поддерживает.