我有一个ClickOnce应用程序,需要从几个URLs进行设置。例如,我需要从以下URL安装它:
http://mycompany.com//url1
http://mycompany.com//url2
我基于从
url1
的安装进行发布(发布向导->第二页->从Web指定URL:url1),但是当我尝试将其复制到url2
时,它仍然显示为url1
。为此,我将安装文件夹URL设置为
http://mycompany.com//url1
并选中“排除部署提供程序URL”并将该应用程序发布到我的PC上的目录中,然后将其复制到服务器上。
从
url2
上的index.html开始安装时,如何强制它使用url2
?编辑1
我做了几次测试,看看为什么会发生这种情况。
发布向导将创建一个名为
index.htm
的HTML文件。在此HTML文件中,有一个引用setup.exe的按钮。当该应用程序运行时,它将从
url1
查找.application。我检查了一下,在HTML文件中没有对url1
的引用,但是setup.exe从url1
中查看.application。如果我从
url1
删除所有文件,但是所有文件都存在于url2
上,则应用程序安装将失败,并显示一条错误消息,即找不到http:\ mycompany.com \ url1 \ myapplication.application。如果我创建该应用程序的新版本并将其上传到
url1
,然后转到url2
并尝试安装它,则将安装较新的应用程序,但不会发生更新。我的设置是:
Options:
Deployment
Automatically generate deployment... Set
Open deployment web Set
Use .dep file ex Not set
For CD installation, aut Set
Verify files uploaded to a web sever Not set
Manifests
Block application from Not set
Allow URL parameters to pass Not set
Use application manifest for trust Not set
Exclude deployment provider URL Set
Create desktop shortcut Set
Publish location
publish/
Installation folder URL
http://MyCompany.com/url1
This application is available offline Set
Publish wizard
How the user install the application:
From a web site URL =url1
Yes this application is available online and off line set.
最佳答案
真的很奇怪-请确保您确实删除了两个URL中的所有内容。使用“排除部署提供程序URL”选项生成ClickOnce部署文件后,在<>。application文件中没有提及安装URL-因此,从我的角度来看,有两种可能的情况:
您将错误的(旧)部署文件复制到URL2文件夹中(或未覆盖它们)。
您正在使用您的应用进行手动更新,其中URL1硬编码在某处。
在我的情况下,完全相同的方案可以正常工作-多个URL-多个安装。