2015-12-02 35 views
0

确定,所以香港专业教育学院得到了通过的ClickOnce的更新程序,我希望它通知有更新的用户,但直到管理员日志,并请求不会实际更新程序更新继续。VB .NET的ClickOnce - 检查更新,但不更新

我通过代码检查这样的更新

If My.Application.IsNetworkDeployed() Then 
      If My.Application.Deployment.CheckForUpdate() Then 

      MsgBox("Updates are available", vbInformation, "Updates available") 

注意我没有叫

My.Application.Deployment.Update() 

实际更新。

当我更新的应用程序检查其显示正常,但是当没有人做任何东西,当它再次关机再启动 - 它似乎恢复到自动下载在程序启动的更新。我已经更新自动在项目属性中关掉

我试过检查更新和程序启动和不更新,所以我在想,只是检查和自动查找更新的行为设定程序下载它下次启动。其ID,而它并没有

有没有人碰到这个问题来了?

谢谢

回答

0

修改此代码。这是与“更新”行动,但你就可以选择这些选项来改变这种

Imports System.Deployment.Application 

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 
    Try 
     Dim updateCheck = ApplicationDeployment.CurrentDeployment 
     Dim info = updateCheck.CheckForDetailedUpdate() 
      If (info.UpdateAvailable) Then 
       MsgBox("Update wird geladen.") 
       updateCheck.Update() 
       MessageBox.Show("The application has been upgraded, and will now restart.") 
       Application.Restart() 
      End If 
    Catch : End Try 
    Form1.Show() 
    Me.Close() 
End Sub 
+0

HI Jonnus,非常感谢您的建议,但只要我有行'昏暗的信息=我下次启动它,无需任何用户输入自动更新应用程序updateCheck.CheckForDetailedUpdate'似乎。我已经尝试过检查更新行,它开始确定,并不更新,只要我做任何更新检查下一次我启动它的程序更新。我真的需要它来检查并通知用户,但实际上并没有更新,直到管理员登录才能启动更新,再次感谢。 – Hmmcrunchy

1

任何机会你?

enter image description here 如果以编程方式处理更新,则需要取消选中“应用程序应检查更新”框。 这样做将灰时的“后”和“前”单选按钮下方。