0

次のコードを使用してデータをWord文書にマージするために、私はしばらくの間オフィスオートメーションを使用しています。

            oWord = new Microsoft.Office.Interop.Word.Application();
            oWord.Visible = false;
            oDoc = oWord.Documents.Open(
            ref oTemplate, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing,
                        ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing);

私は過去にコードに問題があったことはなく、すべてのクライアントが同じ参照dllのセット(オフィス相互運用機能のv12)を持っています。しかし、数日前、一部のクライアントが最後の行でnullオブジェクト参照例外を送信していることに気付きました

oWord.Documents.Open

まったく同じコードとDLLは、一部のクライアントでは機能するように見えますが、他のクライアントではクラッシュします。他の誰かが同じ問題を抱えていましたか?

問題のあるコンピューターの1つですべての.NETバージョンをアンインストールし、最初に使用したバージョン(.NET 2.0SP1)のみを再インストールしようとしましたが、問題は解決しませんでした。問題のあるクライアントでのオフィスのインストール/更新と関係があるのでしょうか?

PS:クライアントにvstor(オフィスオートメーションビジュアルスタジオアセンブリ)をインストールしようとしても成功しませんでした。

4

1 に答える 1

0

私は同様のことを経験しましたが、VSTORをインストールしてもエラーが発生しました...すべてのマシンで動作させる唯一の方法は、Interop dllのオフィスを取得し、プロジェクトのルートを「コンテンツ」として含め、「コピーアウェイ」。さらに、誤った参照に対して「ローカルコピー」をスコアリングしました。それで問題が解決することを確認してください。

于 2012-11-16T10:28:03.563 に答える