ClickOnce 展開、システム アップデートが必要 Microsoft.mshtml
-
09-06-2019 - |
質問
MS Office で動作し、Microsoft.mshtml.dll を使用するアプリケーションがあります。ClickOnce を使用してアプリケーションをデプロイします。アプリケーションはほとんどのマシンに問題なく展開されますが、場合によっては「システム アップデートが必要です。Microsoft.mshtl.dll は GAC に存在する必要があります」というエラーが表示されることがあります。
PIA for Office をインストールしようとしましたが、うまくいきませんでした。Microsoft.mshtml.dll はシステムに依存するファイルであるため、パッケージに含めて再配布することはできません。アプリケーションをデプロイする最善の方法は何でしょうか?
解決
対象としている MS Office のバージョンはわかりますか?これらの PIA は、Office のバージョンに非常に固有です。スマート クライアント アプリケーションを構築していたとき、それぞれが特定のバージョンの Outlook を対象とする Build VM マシンを使用していたことを思い出します。
もう 1 つのハードルは、これらの PIA を前提条件として指定したり、アプリにバンドルしたりできないことでした。これらの PIA は、Office CD (少なくとも2003バージョンでは).
他のヒント
あなたはできる clickonce アプリで前提条件をセットアップする, これにより、ユーザーのインストールを許可する前に、GAC 内の特定のアセンブリがチェックされます。必要な Office DLL を含むアプリを ClickOnce の外部で手動でインストールする必要がありますが、少なくともエラーのスローは避けられます。
Office 2003 と Office 2007 をターゲットとしていますが、Office 11 (2003) DLL を Office 2007 として使用することは下位互換性があります。
この問題は、Microsoft.mshtml.dll ファイルでのみ発生します。このファイルは、ClickOnce アプリの前提条件としてセットアップされます。
この特定のインストールでは、Office 2003 と Office 2007 PIA の両方をインストールしようとしましたが、無駄でした。
私もこの問題を抱えていました。
この問題を解決するには、ソリューション エクスプローラーで [参照] フォルダーに移動し、[Microsoft.mshtml] を右クリックして、[プロパティ] をクリックします。
[プロパティ] ページで、[ローカルにコピー] を True としてマークします。これは機能するはずです。