2

現在、Microsoft.Office.Interop dll を使用する TeamCity でビルドしようとしています。これは、Office がインストールされているため、ローカルでビルドして正常に動作しますが、TeamCity でビルドしようとすると、参照がないため失敗します。

Office 2003 をインストールする必要があるというエラー メッセージが表示され、配布可能な PIA をインストールできません。Office をサーバーにインストールしたくありません。

これを回避する方法はありますか?

4

2 に答える 2

3

teamcity サーバーが実行しているのはビルドだけの場合は、Microsoft.Office.Interop DLL をプロジェクトの参照フォルダーに追加し、その参照フォルダーを参照するようにプロジェクトを構成します。

ただし、TeamCity サーバーが Office Interop を使用するテストも実行している場合、テストを実行しているマシンに Office がインストールされていない限り、問題が発生します。

于 2008-12-19T19:53:25.467 に答える
0

そうではありません。Interop dll は、.NET コードと実際の (COM) Office コードの間のサンク レイヤーにすぎません。基盤となる Office dll のない Interop dll がある場合、Interop への呼び出しは失敗します。これは、Interop が相互運用可能にする COM オブジェクトを呼び出そうとするためです。

これらの COM オブジェクトは Office オブジェクトであるため、Office の一部をインストールする必要があります。

于 2008-12-19T12:48:40.363 に答える