2009-12-17 4 views
3

Je me demande comment configurer mon projet Silverlight pour activer les mises à jour automatiques pour les applications hors navigateur.Hors navigateur application Silverlight - comment configurer les mises à jour automatiques?

J'ai ajouté du code dans app.xaml.cs (voir ci-dessous), reconstruit l'application, installé comme hors-navigateur, ai changé la version de dansinfo.cs, reconstruit, relancé mais malheureusement aucune mise à jour ne s'est produite. Est-ce qu'il me manque encore quelque chose?

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

Question bonus:

Comment App détecte qu'il ya une mise à jour? De assemblyinfo.cs? Quelque part dans les manifestes?

EDIT

Quelqu'un peut-il me expliquer pourquoi IsRunningOutOfBrowser renvoie toujours false même si App est exécuté à partir du raccourci de bureau?

Répondre

2

Grâce au forum Silvelright, il existe une solution.

La propriété IsOutOfBrowser ne peut pas être utilisée dans le constructeur. L'heure à laquelle il commence à fonctionner est l'événement démarré par l'application.

0

Assurez-vous que le serveur Web était en cours d'exécution afin que le client puisse se connecter au serveur et vérifier les mises à jour. Vous pouvez également vérifier la propriété Error pour voir s'il existe des exceptions.

Questions connexes