当最终用户正在安装所需的.NET运行时时,ClickOnce应用程序发布将失败

时间:2014-12-17 21:30:42

标签: visual-studio-2013 clickonce publish

尝试发布,我反复收到此错误:

Unable to add 'setup.exe' to the Web site. The file 'setup.exe' already exists in this Web site.

我正在运行VS2013,只能在线发布""应用程序,因为我在过去有一些奇怪的问题,其中更新导致用户得到" ApplicationName - 1 "使用"离线"时重复安装选项。

这很好用。但是,我使用.NET 4.5.2创建了这个项目,这意味着我的所有最终用户都必须更新。这也很好,因为我在项目的应用程序文件中包含了运行时。

进行一些测试运行,我偶然发现了一个巨大的问题/烦恼:当用户在发布的文件夹中运行setup.exe时,.NET更新的安装程序会运行,但在此更新期间,我无法发布因为文件显然在使用中。这对VS2010来说不是一个问题。

这有什么解决方法吗?想象一下,当我试图发布更新时,有人会将.NET安装程序在屏幕上长时间放在屏幕上很长一段时间。这很成问题。

P.S。此答案不适用,因为它不是实际的权限问题: Clickonce publish - "The file 'default.htm' already exists in this Web site"

2 个答案:

答案 0 :(得分:1)

首先,我认为这个"问题"甚至在VS2010上也是如此,它从未发生过。

现在解决方法:

  1. 在发布更新之前禁用网站/ Web应用程序。
  2. 在发布到PROD之前始终发布到中间文件夹。

答案 1 :(得分:0)

如果您只想删除违规者的锁,请右键单击桌面上的“我的电脑”,右键单击树中的“计算机管理”,然后选择“连接到另一台计算机”。输入安装文件所在的服务器的名称。展开共享文件夹=>打开文件。在设置文件上找到锁,右键单击它,然后选择“关闭打开的文件”。