1


0

DependentPlatformMissingException Microsoft.Vbe.Interop.Formsバージョン11.0.0.0に関するアイデア

奇妙な問題に直面しています。 Visual Studio 2010とVSTO 3.0を使用してOutlook 2007アドインを開発し、ClickOnceを使用して展開しています。

更新があるかどうかを確認したい場合は、Outlookを再起動するようにユーザーに求めます。

ただし、ApplicationDeployment.CheckForDetailedUpdateまたはApplicationDeployment.CheckForUpdateを呼び出すと、次の例外が発生します。

DependentPlatformMissingException:

アプリケーションをインストールまたは実行できません。 アプリケーションでは、アセンブリMicrosoft.Vbe.Interop.Formsバージョン11.0.0.0を最初にグローバルアセンブリキャッシュ(GAC)にインストールする必要があります。

これは、開発マシンとリモートマシンの両方で発生します。

ここに私がこれまで試したが成功しなかったものがあります:-Office 2007 PIAのアンインストールと再インストール-Microsoft.Vbe.Interop.Forms v 11.0.0.0(ファイルバージョン12. *)をプロジェクトへの参照として追加-dllが検証済み正しいバージョンがGACにあります

この例外が発生する理由はわかりません。 あなたが助けることができると思います。

更新この真新しいVS 2010プロジェクトを試しました。 これが私のアドインファイルです

フレームワークが.net 4に設定されている場合、正常に動作します。 フレームワークが.net 3.5に設定されている場合、同じ例外とエラーが発生します。

名前空間TestOutlookAddIn2 \ {public partial class ThisAddIn \ {private void ThisAddIn_Startup(object sender、System.EventArgs e)\ {MessageBox.Show( "I’m in");

        if (ApplicationDeployment.IsNetworkDeployed)
        {
            var info = ApplicationDeployment.CurrentDeployment.CheckForDetailedUpdate();
        }
    }

    private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
    {
    }

    #region VSTO generated code

    ///
    /// Required method for Designer support - do not modify
    /// the contents of this method with the code editor.
    ///
    private void InternalStartup()
    {
        this.Startup += new System.EventHandler(ThisAddIn_Startup);
        this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
    }

    #endregion
}

}

2 Answer


0


NET 4をターゲットとする場合、PIAは不要で、必要な部分だけが埋め込まれます。

VS2010からVSTO 3ランタイムを実際に展開していますか? または、VSTO 4(VS2010に付属)を展開していますか?


0


vs2010を使用する場合、.net framework 4をターゲットにする必要があるようです。 vs2010にアップグレードしましたが、プロジェクトをターゲットのままにしておきました .net3.5. Which caused the above problem. I only resolved it by reverting vs2008に戻る:(

Click-この問題に関するMVPの展開後。