1

私が今見ている唯一の方法は、必要なタスクの呼び出しを含む MSBuild 用の xml ファイルを作成し、「プログラムの実行」アクションを呼び出して MSBuild を直接実行することです。FinalBuilder を使用してこれを行う標準的な方法はありますか?

4

2 に答える 2

2

FinalBuilder 6 では、MSBuild タスクを使用できます。しかし、私たちのビルド スクリプトで正直に言うと、バッチ ファイルと「プログラムの実行」を使用する方がより良い解決策であることがわかりました。

編集:このトピックについてすばやく読んで、バッチファイルを使用した理由を思い出しました。FB6 MSBuild アクションは、「デフォルト ビュー」からすべてのプロパティにアクセスできるわけではなく、「プロパティ グリッド」に変更する必要があるため、少し直感に反します。

更新:あなたのコメントから; 個々の MSBuild タスクを実行し、「プログラムの実行」アクションを使用しない場合は、独自の FB アクションを作成する必要があります。自分でカスタム アクションを作成したことはありませんが、どうやら非常にシンプルです。

これは私が使用したバッチファイルです:

@ECHO off
SET Action=%1
SET Configuration=%2
SET Platform=x86
SET CommonTools=%VS90COMNTOOLS%
SET SourceDir=%CD%\..\..
SET SolutionFilename=Solution.sln
SET MSBuild=C:\Windows\Microsoft.NET\Framework\v3.5\MSBuild.exe

IF "%Action%" == "" SET Action=Rebuild
IF "%Configuration%" == "" SET Configuration=Release

:BUILD
%MSBuild% "%SourceDir%\%SolutionFilename%" /v:m /t:%Action% /p:Configuration=%Configuration% /p:DenEnvDir="%CommonTools%..\IDE\" /p:SolutionDir="%SourceDir%" /p:Platform=%Platform%

:END
ECHO.
ECHO ErrorLevel: %ERRORLEVEL%
EXIT /B %ERRORLEVEL%
于 2010-12-04T20:13:02.017 に答える
0

依存する msbuild 環境をインスタンス化せずに、別のアプリケーション内から msbuild タスクを実行することはできません。少なくとも msbuild プロジェクト ファイルが必要です。

于 2010-12-05T11:27:18.963 に答える