我们最近更换了服务器,由于地址不同,我们必须更新ClickOnce应用程序的位置信息。但是,在更改之后,以前的版本不会自动检测到有更新,并且不会更新到新服务器上发布的新版本。
之前的ClickOnce信息如下
Publishing Folder Location: ftp://example.oldname.com/
Installation Folder URL: http://www.name.com/dir/
Deployment web page: appName.html
Version: 1.0.0.0
然后它改为以下
Publishing Folder Location: ftp://name.ca/
Installation Folder URL: http://www.name.com/newdir/ (also tried /dir/)
Deployment web page: appName.html
Version: 1.0.1.0
注意:应用程序设置为在应用程序启动之前检查更新,并在服务器更改之前在所有版本< = 1.0.0.0上成功更新。因此,错过该设置不是问题。
应用程序正确发布到新的ftp服务器。安装文件夹URL应正确指向新的ftp服务器。 dir/
和newdir/
都已更改为指向新位置。 http://www.name.com/newdir/appName.htm
和http://www.name.com/dir/appName.htm
都会打开正确的页面。
所有文件都从旧的ftp复制到新的ftp。这包括应用程序的文件。
Application Files - folder and it's contents
appName.htm - file
AppName.application - file
两台ftp服务器仍在运行。旧的将很快被删除,但它现在仍在那里。
执行此操作后,旧应用程序(v 1.0.0.0)无法检测并更新到新版本(1.0.1.0)。
这是可以解决的问题还是ClickOnce应用程序需要重新安装?
答案 0 :(得分:0)
需要新安装。
如果您希望能够自动化,那么您必须提前计划。我们之前已经这样做了,但首先我们制作了一个新的更新,它将从新位置安装应用程序并卸载当前正在运行的应用程序。这是你真正把马放在马前的那些时间之一"所以需要计划。
更新
请注意,您无法更改本地计算机上的路径(获取更新的位置),因为它会使安全证书无效,并且永远不会再次尝试更新。