2

ボタンをクリックして、次のアクティビティを実行できるプロセスを確立しようとしました。

目的

  1. SVN から最新のコードをダウンロードします。
  2. 2 セットのコードをビルドして、dll と exe-(a) リリース モードでの Web アプリケーション (b) デバッグ モードでのスタンドアロン アプリケーションを作成します。
  3. 次に、構成ファイル内のキーの値をいくつか置き換えます。
  4. 次に、それらを特定の場所に配置します。

これまでの手順

以下に示すように、スタンドアロン用の exe および dll をビルドする demo.bat ファイルを作成しました。


REM * ============================Starting Setup for Standalone======================================
SET Folder= C:\Automating\Application\Source\StandaloneApp\

cd %Folder%App1
msbuild /property:Configuration=Debug App1.csproj /t:clean /t:build

cd %Folder%App2
msbuild /property:Configuration=Debug App2.csproj /t:clean /t:build

del /F /S /Q /A %Folder%Setup\*.*

XCOPY %Folder%App1\bin\Debug\*.* %Folder%Setup\*.* /S /Y /F /Q
XCOPY %Folder%App2\bin\Debug\*.* %Folder%Setup\*.* /S /Y /F /Q

コマンドプロンプトをVS2010 cmdプロンプトに変更する別のバットファイルdemo1.batを作成


%comspec% /k ""c:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat"" x86
%comspec% /k ""C:\Automating\BuildAuto\BuildAutomation\demo.bat""

svn からダウンロードする cmd ファイルをもう 1 つ作成しました


TortoiseProc.exe /command:export /URL:[URL path] /Path:"C:/Automating/Demo"

最後に、ユーザーがボタンをクリックして svnExport.bat に従ってダウンロードし、ダウンロードしたコードを に従ってビルドできる Web アプリケーションdemo1.bat


protected void Button2_Click(object sender, EventArgs e) {
 ProcessStartInfo psi = new ProcessStartInfo(@"C:\AutomatingPOC\BuildAuto\BuildAutomation\demo1.bat");
            psi.UseShellExecute = false;
            psi.RedirectStandardOutput = false;
            psi.CreateNoWindow = false;
            Process.Start(psi);
}

イベントのダウンロードは正しく機能していますが、ビルドは機能していません。コードの作成方法についてサポートが必要です

4

3 に答える 3

9

なぜ車輪を再発明するのですか?TeamCitymsbuildなどの利用可能なツールを使用します(他にも多くの代替手段があります)。Eugene がここでとてもいい紹介をしてくれたことがわかりました。

人々はビルド自動化ツールの開発と改良に何年も費やしました。もし私があなただったら、その場で立ち止まって辺りを見回すでしょう。

于 2013-05-07T16:40:04.417 に答える