我这里有一个拔毛器。
我将VS 2008应用程序发布到服务器,通过ClickOnce安装。到现在为止还挺好。它安装得很好。然后我添加了一个ClickOnce更新检查器 - 一个使用ApplicationDeployment来处理检查&应用更新。
到目前为止,非常好。
然后,在安装它的某些机器上,更新程序将无法工作。它返回的错误是应用程序已经从另一个URI安装 - 它不是。
经过充分挖掘后,我发现:
网址1:htfp://www.domain.com/app/myapp.application
网址2:htfp://www.domain.dom/App/myapp.application
ClickOnce认为网址1和网址2完全不同 - 即使“app”在网址2中包含大写字母A,并且两者都指向相同的有效.application文件。
当我发现这一点时,我编辑了所有内部网链接以指向URL的全小写版本,这个版本现在正在运行,但总有可能有人可能会从“不正确”的URL安装它 - 唯一的解决方案是从正确的URL强制卸载并重新安装应用程序。
如何强制部署URL ClickOnce检查更新?它似乎根据它安装的URL生成它的清单,所以我不确定我是否可以从VS'端修复它。
谢谢,
~Wogan