Visual Studioビルド、Clickonceデプロイメント、DotfuscatorおよびMageのスクリプト作成
-
03-07-2019 - |
質問
クライアントにアプリケーションをリリースするプロセスは、見出しごとです
- ビルド
- Clickonceデプロイメント
- Dotfuscatorを使用してメインの実行可能ファイルを難読化する
- mageを使用してマニフェストと.applicationファイルに署名する
- 配達用のジップ
クライアントにリリースが必要になるたびに多くの時間を使用するため、これを自動化するためにオープンソースプログラムに取り組みたいと思います。私は解決策を求めることは少し多いと思う;)だから、理想的なフォーマットは何でしょうか?バッチスクリプト、C#アプリケーション?
このプロセスの既存のソリューションを知っている、またはコラボレーションを希望している人はいますか?
解決
では、MSBuildの使用を検討していないと思いますか?
.net SDKでも無料で提供されるため。 Visual Studioプロジェクトは既にMSBuildプロジェクトファイルであるため、これらを使用して変更し、完全な統合ビルドを作成できます。
ClickOnce配置を生成するには、次のMSBuildタスクを使用します。
- GenerateApplicationManifest
- GenerateDeploymentManifest
- Exec
- SignFile
いくつかの問題があるため、これらの後にmageを実行する必要もあります。たとえば、マニフェストを更新して署名するには、このためにExecタスクを使用します。
<!-- Correct the codebase property pointing to the application manifest file -->
<Exec
Command=""$(SdkPath)bin\mage" -Update "$(DeploymentManifest)" -AppManifest "$(ApplicationManifest)""
WorkingDirectory="$(PublishDir)" />
<!-- Signing the Deployment manifest -->
<Exec
Command=""$(SdkPath)bin\mage" -Sign "$(DeploymentManifest)" -CertFile "$(SolutionRoot)\$(Branch)\Source\esamba.pfx" -Password esamba"
WorkingDirectory="$(PublishDir)" />
これがお役に立てば幸いです。
他のヒント
必要に応じてカスタムタスクで拡張可能な nant などのビルドツールを使用しない理由。
これは一般的な問題であるため、ほとんどのタスクには定義済みのタスクが存在する可能性が高く、他の実行可能ファイルを簡単に呼び出したり、.NET言語でカスタムコードを記述してタスクを追加したりできます。
所属していません StackOverflow