有没有一种方法可以重命名已部署的ClickOnce应用程序?

10

我的公司有一个ClickOnce应用程序,已经在我们的客户中使用了一年左右。

我们正在进行重新品牌定位,并希望更改应用程序的名称。然而,只是在Visual Studio中更改所有正常名称选项,然后构建一个新的部署,显然会更改现有应用程序正在寻找的清单,因此任何已安装的应用程序都不会看到新的更新。

我尝试过修改 .application 文件,但是还没有成功。是否有一种方法可以重命名已部署的ClickOnce应用程序,或者我们必须让人们安装新的应用程序?


1
这并不是一个直接回答,但在过去,当我需要对 ClickOnce 应用程序进行重大更改时,我会更新旧版本,在启动时显示指向新版本的链接,然后拒绝继续。这将引导所有用户转到新应用程序并强制升级。 - Simon P Stevens
4个回答

8
如果您想运行应用程序的两个不同版本,您只需更改程序集名称以使ClickOnce认为它是不同的版本。这让我想知道,如果您不更改主应用程序的程序集名称,ClickOnce是否仍会将其视为相同的应用程序。
如果您必须更改程序集名称(我建议这样做),那么您将需要让用户卸载并重新安装该应用程序。您可以为他们以编程方式执行此操作;它只需要一分钟。
MSDN文章“ ClickOnce部署中的证书过期”介绍了如何在ClickOnce证书过期时以编程方式卸载ClickOnce应用程序并从不同的URL重新安装它(代码可用)。我们已经做过几次,它运行得非常好,对用户来说并不那么侵入性。
我非常确定您不能只将新版本构建到新的URL并将部署清单复制到旧的部署文件夹中,因为您正在更改应用程序标识,它将无法将其识别为更新,但您始终可以尝试一下。

嗨,谢谢你提供这些链接,非常有用。最终我只是让客户卸载/重新安装,并在新版本中使用了一张有效期为5年的证书,但下次我再处理这些东西时肯定会回来重新阅读这些内容。 - tobinibot

1

除非你将其构建到应用程序中,否则需要重新部署。你可以重命名文件,但是如果没有代码支持,GUI 将不会更改。


1
如果您只想更改“开始菜单”名称和“添加/删除程序”名称,可以更改“产品名称”而不更改程序集名称。我进行了快速测试,更新似乎仍然适用于测试证书,但是您应该自己测试以确保。

  1. 在“解决方案资源管理器”中选择一个项目,在“项目”菜单上,单击“属性”。
  2. 单击“发布”选项卡。
  3. 单击“选项”按钮以打开“发布选项”对话框。
  4. 单击“描述”。
  5. 在“发布选项”对话框中,输入要在“产品名称”中显示的名称。
  6. 可选地,您可以在“发布者名称”中输入发布者名称。

来自 https://learn.microsoft.com/en-us/visualstudio/deployment/how-to-specify-a-start-menu-name-for-a-clickonce-application?view=vs-2019


0

这篇来自 MSDN 的文章可能会有所帮助:

手动部署 ClickOnce 应用程序演练

其中一篇帖子提到尝试以下操作。

不幸的是,Mage 没有支持 .deploy 重命名的功能。解决方法是:

  1. 生成应用程序清单。
  2. 签署应用程序清单。
  3. .deploy 扩展名添加到除 .manifest 文件之外的所有文件中。
  4. 创建应用程序清单,修改部署标记,并添加参数 mapFileExtensions="true"
  5. 签署应用程序清单。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接