Silverlight 5中的自动更新

时间:2013-12-05 22:24:18

标签: silverlight silverlight-5.0

我们有三个用完浏览器的Silverlight应用程序。我们在这些应用程序中有代码,因此当新版本可用时,应用程序将自动更新。此功能突然停止在三个应用程序之一中工作。据我所知,代码在所有三个应用程序中都是相同的。 如果我通过从浏览器运行并右键单击卸载并重新安装可以卸载并重新安装该应用程序。但这不是一个很好的解决方案,因为这意味着我必须访问每个用户来修复他们的桌面。 我跟踪了一下,发现我到达了检查更新但是e.UpdateAvailable为false的段落。我不确定下一步该尝试什么。

这是我的代码

Private Sub Application_Startup(ByVal o As Object, ByVal e As StartupEventArgs) Handles Me.Startup



    Me.RootVisual = New MainPage

    Dim l_CurrentHost As String = App.Current.Host.Source.OriginalString

    If l_CurrentHost.Contains("localhost") = True Then

        Exit Sub
    End If


    If App.Current.IsRunningOutOfBrowser Then


        m_Update.startProgress()

        m_Update.Show()

        AddHandler App.Current.CheckAndDownloadUpdateCompleted, AddressOf DownloadUpdateCompleted
        App.Current.CheckAndDownloadUpdateAsync()


    End If



End Sub
Private Sub DownloadUpdateCompleted(ByVal sender As Object, ByVal e As CheckAndDownloadUpdateCompletedEventArgs)
    m_Update.endProgress()
    'Exit Sub
    '   MessageBox.Show("1")

    '   MessageBox.Show("We got to #3 " & e.UpdateAvailable)

    If e.UpdateAvailable Then

        MessageBox.Show("An application update has been downloaded, and will close. " & _
        "Restart the application to run the new updated version.")

        App.Current.MainWindow.Close()

    ElseIf e.Error IsNot Nothing AndAlso _
        TypeOf e.Error Is PlatformNotSupportedException Then

        MessageBox.Show("An application update is available, " & _
            "but it requires a new version of Silverlight. " & _
            "Visit the application home page to upgrade.")
    Else
        '  MessageBox.Show("2")
        ' MessageBox.Show("There is no update available.")
    End If

End Sub

请给我任何提示,帮助我解决这个问题。

1 个答案:

答案 0 :(得分:0)

我得到了一个在其他论坛中为我工作的答案。我在这里张贴以防其他人有这个问题:

我将这些行添加到ServiceReferences.ClientConfig中。

<object>
    <param name="autoUpgrade" value="true"/>
  </object>

该提示还表示签署了我所做的xap,但问题并没有消失,直到我修改了ClientConfig。

鲍勃