gpt4 book ai didi

c# - 单击一次更新到特定版本

转载 作者:太空宇宙 更新时间:2023-11-03 10:56:42 25 4
gpt4 key购买 nike

我希望我的用户能够使用单击一次更新到特定版本。目前我们有帮助 |检查更新,更新到最新版本。

我想添加帮助 |更新到版本(然后会提示用户输入一个版本号,然后将它们更新到该版本(如果它们当前处于较低版本或较高版本))。

应用程序是用c#开发的

  • 请注意,我们希望通过应用程序而不是在应用程序之外执行此操作,例如我们知道我们可以通过控制面板等回滚...但我们想要的是应用程序内的工具转到高于或低于当前版本的特定版本。

最佳答案

每次发布​​后,我只需要做一些额外的工作就可以实现这个功能,不需要用户提供详细的说明。这个获取特定版本的方式是每个版本需要有多个clickonce目录

发布后,您需要在记事本中打开 myApplication.application 并进行更改

<deploymentProvider codebase="http://www.example.com/ClickOnce/MyApplication/MyApplication.application" />

<deploymentProvider codebase="http://www.example.com/ClickOnce/MyApplication1.02.03.45/MyApplication.application" />

或您将提供的任何版本;在上传到 clickonce 之前。

这里是用户如何获得特定版本

    Public Shared Sub GetSpecificVersion()
Try
Dim spre As String = InputBox("press enter to download the current version of myApplication. If you would want to download a specific version of myApplication please append the version number i.e myApplication1.02.03.45", , "myApplication")
Dim spost As String = "/myApplication.application"
Dim finalUrl As String = "http://www.example.com/clickonce/"
finalUrl = finalUrl & spre & spost
Try
My.Computer.Network.DownloadFile(finalUrl, "C:/ProgramFiles", Nothing, Nothing, Nothing,

1000, True) 'url/filename/username/password/showui/timeout/overwriteExiting
Process.Start("C:/ProgramFiles/myApplication.application")
Application.Current.Shutdown()
Dim r As String
Catch ex As Exception
MsgBox("The desired version of myApplication may not be typed correctly or is unavailable on clickonce. alternatively a connection could not be established to the clickonce server")
MsgBox(ex.ToString())
End Try
Catch ex As Exception
MsgBox(ex.ToString())
End Try
End Sub

要获取特定版本,用户需要做的就是输入版本“myApplication1.02.34”

这样做的副作用是使用 list 检查连续更新只会检查特定文件夹,我创建了第二种方法从默认目录获取最新版本:

此处获取中央版本

Public Shared Sub GetLatestCentralizedVersion()
Try
My.Computer.Network.DownloadFile("http://www.example.com/clickonce/myApplication/myApplication.application", "C:/ProgramFiles/myApplication.application", Nothing, Nothing, Nothing, 1000, True) 'url/filename/username/password/showui/timeout/overwrite
Process.Start("C:/ProgramFiles/myApplication.application")
Application.Current.Shutdown()
Catch ex As Exception
MsgBox(ex.ToString())
End Try
End Sub

关于c# - 单击一次更新到特定版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19245529/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com