我有一个.NET 3.5 SP1 WinForms应用程序。我已使用以下设置为ClickOnce部署进行了设置:
我们的用户可能无法访问互联网或已安装3.5。由于他们都将在公司内部网上,我们已将必要的安装程序放在他们都能够访问的网络共享位置。
在缺少.NET 3.5的计算机上测试安装时,一切正常。它安装了先决条件和应用程序,它没有问题。
问题在于,每次部署应用程序时(通过“发布”按钮),Visual Studio 2008都会坚持将所有必备文件/文件夹从开发PC复制到网络位置(installers \ myapp)。这导致我的20MB应用程序在文件夹中大约200MB。这有效地复制了所有内容,因为~2002MB先决条件已经在installers \ common文件夹中。正如我所说,它安装得很好。如果我删除VS放在myapp文件夹中的先决条件,它甚至会安装得很好,可能是因为安装程序无论如何都是从公共位置获取它们(如先决条件对话框中所指定的)。
这可能是一个微不足道的问题,因为没有任何问题,它会工作正常,但它有两个原因令人讨厌:
我可以通过简单地每次删除文件夹来解决第二个问题,但这本身就是一个烦人的额外步骤。
答案 0 :(得分:0)
您可以做的一件事是使用Bootstrapper Manifest Generator滚动您自己的先决条件。将URL设置为要为部署提供服务的位置。然后将VS中的选项设置为“从供应商位置下载”。
它将从您在BMG中设置的URL下载部署,并且不会在每次发布ClickOnce应用程序时部署先决条件。