2009-03-06 74 views
4

的释放我的应用程序客户端进程是每个标题脚本的Visual Studio生成,ClickOnce部署,Dotfuscator的和法师

  • 构建
  • ClickOnce部署
  • 模糊处理的主要可执行文件Dotfuscator的
  • 与法师签署清单和.application文件
  • 邮递送达

我想开发一个开源程序来实现这个功能,因为每次客户端需要发布时都会花费很多时间。我认为要求解决方案有点多;)那么理想的格式是什么?批处理脚本,C#应用程序?

是任何人都知道的现有解决方案的这个过程还是愿意在一个协作?

回答

2

所以我猜你是不是在找到使用的MSBuild?

因为也都可以免费使用.NET SDK。您的Visual Studio项目已经是MSBuild项目文件,因此您可以使用这些文件并对其进行修改以进行完整的集成构建。

要生成ClickOnce部署,那么您需要使用下面的MSBuild任务:

  • GenerateApplicationManifest
  • GenerateDeploymentManifest
  • Exec的
  • SignFile

因为有些问题我也需要在这些之后运行法师,例如更新清单并签署它,我使用执行这个任务:

<!-- Correct the codebase property pointing to the application manifest file --> 
<Exec 
    Command="&quot;$(SdkPath)bin\mage&quot; -Update &quot;$(DeploymentManifest)&quot; -AppManifest &quot;$(ApplicationManifest)&quot;" 
    WorkingDirectory="$(PublishDir)" /> 

<!-- Signing the Deployment manifest --> 
<Exec 
    Command="&quot;$(SdkPath)bin\mage&quot; -Sign &quot;$(DeploymentManifest)&quot; -CertFile &quot;$(SolutionRoot)\$(Branch)\Source\esamba.pfx&quot; -Password esamba" 
    WorkingDirectory="$(PublishDir)" /> 

我希望这可以帮助你。

+1

另外Dotfuscator的配备了一个MSBuild任务,你可以使用的MSBuild社区任务zip文件http://msbuildtasks.tigris.org/ – 2009-03-06 14:58:52

2

为什么不使用像nant构建工具按照需要进行扩展与自定义任务。

由于这是一个常见的问题有你最有可能的任务预定任务,你可以方便地调用其他可执行文件,或以任何.NET语言来添加任务编写自定义代码。