1

Win 2003 Server + IIS6 から新しいサーバー Win 2008 Server + IIS7 にいくつかのレガシー アプリケーションを移行しています。

いくつかの問題に直面しています。最後に、一部のアプリケーションが Office Interop v11 (Office 2003) を使用しているのに対し、新しいサーバーには Office 2010 (+ interop v14) がインストールされています。

次のエラーが表示されます。

Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 80070005.

多くのフォーラムに従って解決しようとしました(たとえば、これはhttp://forums.asp.net/t/1303594.aspx/1)。でも何も変わらない…

これは、インストールされている相互運用機能の異なるバージョンに依存する可能性があるかどうか疑問に思っています。古いアプリを新しいバージョンの相互運用のために再コンパイルせずに動作させる方法はありますか?

4

2 に答える 2

1

NetOfficeを試してみてください。これは、Office Interop API のかなり透過的なラッパーです。これらは実行時に利用可能な Interop DLL を検出してロードするため、それらに対してソリューションを構築する必要はありません。

于 2013-06-27T13:36:53.070 に答える
0

この問題を解決するために、新しいサーバーに Office 2003 をインストールしました。(2 つのバージョンの Office が同じマシン上で競合することなく共存できることを発見しました...)

于 2013-07-22T10:32:15.893 に答える