2009-03-06 73 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語言來添加任務編寫自定義代碼。