我的公司有一个 ClickOnce 应用程序,我们的客户已经使用了大约一年。
我们正在进行品牌重塑,并希望更改应用程序的名称。但是,仅更改 Visual Studio 中的所有正常名称选项,然后构建新部署显然会更改现有应用程序正在寻找的清单,因此基本上任何已安装的应用程序都不会看到新的更新。
我试过弄乱 .application 文件,但我还没有得到任何工作。有没有办法重命名已部署的 ClickOnce 应用程序,还是我们必须让人们只安装新应用程序?
如果您想运行应用程序的两个不同版本,您只需更改程序集名称即可让 ClickOnce 认为它是不同的版本。这让我想知道您是否不更改主应用程序的程序集名称,如果 ClickOnce 仍然显示为同一个应用程序。
如果您必须更改程序集名称(我会),那么您将不得不让您的用户卸载并重新安装该应用程序。您可以以编程方式为他们执行此操作;只要一分钟。
MSDN 文章ClickOnce 证书过期时 ClickOnce 部署中的证书过期向您展示了如何以编程方式卸载 ClickOnce 应用程序并从不同的 URL 重新安装它(代码可用)。我们已经这样做了几次,效果非常好,并且对用户没有那么大的干扰。
我很确定您不能只将新版本构建到新 URL 并将部署清单复制到旧部署文件夹中,因为您正在更改应用程序标识,它不会将其识别为更新,但是您可以随时尝试。
除非您将其内置到应用程序中,否则您将需要重新部署它。您可以重命名该文件,但如果没有后面的代码中的某些内容来执行此操作,则不会更改 GUI。
如果您只想更改“开始菜单”名称和“添加/删除程序”名称,则可以更改“产品名称”而不更改程序集名称。我做了一个快速测试,更新似乎仍然适用于测试证书,但您应该自己测试以确保。
在解决方案资源管理器中选择一个项目后,在“项目”菜单上,单击“属性”。
单击发布选项卡。
单击“选项”按钮打开“发布选项”对话框。
单击说明。
在“发布选项”对话框中,输入要在“产品名称”中显示的名称。
或者,您可以在发布者名称中输入发布者名称。
MSDN 上的这篇文章可能有用:
其中一篇文章指出正在尝试以下操作。
不幸的是, Mage没有支持 .deploy-renameing 的功能。一种解决方法是:
.deploy
扩展名添加到除文件之外的所有.manifest
文件mapFileExtensions="true"
。