1

環境: Win2k3 上の TeamCity 6.5.1、Win2k3 上の BuildAgent(s)、Visual Studio 2k10、.NET v4、Nant 0.91

TeamCity のセットアップを完了し、セキュリティ ガイドラインに従ってビルド マシンの BuildAgent アカウントをロックダウンしようとしています。Nant スクリプトを介して「devenv.exe /build」が初めて呼び出されると、ビルドがクラッシュします。

エラーが発生しているアプリケーション devenv.exe、バージョン 10.0.30319.1、スタンプ 4ba1fab3、エラーが発生しているモジュール msenv.dll、バージョン 10.0.30319.1、スタンプ 4ba1fd94、デバッグ? 0、障害アドレス 0x0000c36b。

そのメッセージをグーグルで検索することはできませんでした。ただし、BuildAgent サービスをローカル ネットワーク アカウントから管理者アカウントに変更すると、うまくいきます。ただし、別のドメイン アカウントを使用すると失敗します。そのドメイン アカウントをローカルの Administrators グループに追加しても失敗します。

私が見逃しているものについてのアイデアはありますか? 「DevEnv /build」がクラッシュせずに機能するために必要な特定の特権はありますか?

4

1 に答える 1

1

うん、私は最近これを経験した。まず、devenv.comではなく、を使用しますdevenv.exe。com拡張子を持つdevenvは、GUIを使用せずに、ソリューションを構築し、すべての出力をコンソールに送信できます。TeamCityエージェントはサービスであるため、GUIとの対話がまったく許可されていない場合があります。

次に、これは不可能な場合があることを認識しています(特に、MSIをビルドしている場合)が、TeamCityに付属する組み込みのVisualStudioビルドランナーを使用するために必要なことは何でも行うことを検討してください。それはその仕事をするためにMSBuildを利用します。このルートを使用してdevenvが必要な場合は、MSBuild Extensions Packを見つけてください。これにより、独自のdevenvビルドタスクでこれらの問題の多くがすでに解決されています。

正直なところ、私はMicrosoftのインストールプロジェクトを代替案(InstallShieldまたはWiX)に置き換えることになり、振り返ることはありませんでした。

于 2011-08-08T19:12:51.163 に答える