Мне интересно, как настроить мой проект Silverlight для включения автоматических обновлений для приложения вне браузера.
Я добавил некоторый код в app.xaml.cs (см. Ниже), перестроил приложение, установил его как вне браузера, изменил versionionfo в файлеblyblyinfo.cs, перестроил, запустил снова, но, к сожалению, обновления не произошло. Я все еще что-то упускаю?
public App()
{
this.Startup += this.Application_Startup;
this.Exit += this.Application_Exit;
this.UnhandledException += this.Application_UnhandledException;
InitializeComponent();
if (Application.Current.IsRunningOutOfBrowser)
{
App.Current.CheckAndDownloadUpdateCompleted +=
new CheckAndDownloadUpdateCompletedEventHandler(App_CheckAndDownloadUpdateCompleted);
App.Current.CheckAndDownloadUpdateAsync();
}
}
void App_CheckAndDownloadUpdateCompleted(object sender, CheckAndDownloadUpdateCompletedEventArgs e)
{
if (e.Error == null && e.UpdateAvailable)
{
MessageBox.Show("Application updated, please restart to apply changes.");
}
}
EDIT
Бонусный вопрос:
Как приложение определяет наличие обновления? Из Assemblyinfo.cs? Где-то в манифестах?
EDIT
Кто-нибудь может мне объяснить, ПОЧЕМУ IsRunningOutOfBrowser
всегда возвращает ЛОЖЬ, даже если приложение запускается с ярлыка на рабочем столе?