What's the best way to create ClickOnce deployments我们的团队开发分布式winform应用程序。我们使用ClickOnce进行部署,对此感到非常满意。 但是,我们发现ClickOnce的痛苦在于创建部署。我们拥有标准的开发/测试/生产环境,并且需要能够为每个单独安装和更新的部署创建部署。另外,我们希望控制要部署的程序集。仅因为程序集已编译并不意味着我们要对其进行部署。 Visual Studio是创建部署的显而易见的首选。但是,VS确实不能解决上述问题。下一个是SDK工具Mage。 Mage可以正常工作,但是创建部署非常繁琐,我们不希望每个开发人员都拥有我们的代码签名证书和密码。 我们最终要做的是滚动我们自己的部署应用程序,该应用程序使用命令行版本的Mage创建ClickOnce清单文件。 我对我们当前的解决方案感到满意,但似乎将有一个业界公认的方法来解决此问题。在那儿? 我会考虑使用msbuild。它具有用于处理clickonce部署的内置任务。如果您想走这条路,我提供了一些参考资料,可以帮助您入门。这是我使用的,我发现它可以满足我的需求。通过使用msbuild的良好构建过程,您应该能够缓解自己的痛苦。 这是有关ClickOnce清单生成如何与MsBuild一起使用的详细信息。 我已经使用nAnt运行整体构建策略,但是将参数传递到MSBuild中以编译和创建部署程序包。 基本上,nAnt针对需要部署到的每个环境调用MSBuild,并为每个环境生成单独的部署输出。您最终得到一个文件夹以及每个环境所需的所有ClickOnce文件,您可以将这些文件复制到服务器中。 这也是我们处理多个生产环境的方式-我们在美国,加拿大和欧洲拥有单独的应用程序实例,因此每个构建最终都会创建9个部署,每个分别针对dev,qa和prod进行部署。 |