2009-09-15 103 views
0

我在这里有一个拉毛的人。如何强制ClickOnce部署网址?

我将一个VS 2008应用程序发布到服务器,通过ClickOnce安装。到现在为止还挺好。它安装得很好。然后我添加了一个ClickOnce更新检查器 - 一个使用ApplicationDeployment来处理检查&应用更新。

到目前为止,这么好。

然后,在其上安装的某些机器上,更新程序不起作用。它返回的错误是应用程序已经从另一个URI安装 - 事实并非如此。

足够的周围挖掘后,我发现:

URL 1:HTFP://www.domain.com/app/myapp.application

URL 2:HTFP://www.domain。 dom/App/myapp.application

ClickOnce认为URL 1和URL 2完全不同 - 尽管“app”在URL 2中包含大写字母A,并且都指向相同的有效.application文件。

当我发现我编辑了我们所有的Intranet链接以指向一个现在正在使用的URL的全小写版本,但总是有人可能从一个“不正确的”URL安装它 - 唯一的解决方案是从正确的URL强制卸载并重新安装应用程序。

如何强制部署URL ClickOnce检查更新?它似乎基于它的安装URL来生成它的清单,所以我不确定我是否可以从VS'端修复它。

感谢,

〜Wogan

+0

你尝试URL在服务器重写或重定向? – 2009-09-15 08:37:22

+1

最终,这是正确的...网址*区分大小写。即使许多Web服务器选择将它们视为不敏感(在路径中) – 2009-09-15 08:41:14

+0

@ 1800我不能 - 它是Sharepoint,我无法控制它。 @Marc True ...我在ApplicationDeployment中发现了AbsoluteUri的参数,但是我不能改变它们,所以我想这是为了确保人们从正确的URI进行安装。 – Wogan 2009-09-15 09:31:52

回答