Любая идея о DependentPlatformMissingException Microsoft.Vbe.Interop.Forms Версия 11.0.0.0 - PullRequest
1 голос
/ 30 июня 2010

У меня странная проблема.Я разрабатываю надстройку для Outlook 2007 с использованием Visual Studio 2010 с VSTO 3.0 и развертываю ее с использованием ClickOnce.

Я хотел бы проверить, есть ли какие-либо обновления и, если да, предложить пользователю перезапустить Outlook.

Однако, если я вызываю ApplicationDeployment.CheckForDetailedUpdate или ApplicationDeployment.CheckForUpdate, я получаю следующее исключение:

DependentPlatformMissingException:

Невозможно установить или запустить приложение.Приложение требует, чтобы сборка Microsoft.Vbe.Interop.Forms версии 11.0.0.0 сначала была установлена ​​в глобальном кэше сборок (GAC).

Это происходит как на моем компьютере разработчика, так и на удаленном компьютере.

Вот что я попробовал до сих пор безуспешно: - Удалил и переустановил PIA Office 2007 - Добавил Microsoft.Vbe.Interop.Forms v 11.0.0.0 (файл версии 12. *) в качестве ссылки на мой проект - Провереночто DLL с правильной версией находится в моем GAC

Я понятия не имею, почему происходит это исключение.Надеюсь, что вы можете помочь.

Обновление Я только что попробовал этот совершенно новый проект VS 2010.Вот мой файл дополнения

Если мой фреймворк установлен на .net 4, он работает нормально.Если мой каркас установлен на .net 3.5, я получаю то же исключение и ошибку.

namespace TestOutlookAddIn2 {открытый частичный класс ThisAddIn {private void ThisAddIn_Startup (отправитель объекта, System.EventArgs e) {MessageBox.Show ("Я в ");

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

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

    #region VSTO generated code

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

    #endregion
}

}

Ответы [ 2 ]

0 голосов
/ 16 сентября 2011

Похоже, вам нужно ориентироваться на .net framework 4 при использовании vs2010. Я обновился до vs2010, но оставил проект, нацеленный на .net3.5. Что вызвало вышеуказанную проблему. Я только решил ее, вернувшись к vs2008: (

См. этот (повторяющийся вопрос) в социальной сети msdn , на который есть ответы от MVP по развертыванию за один клик относительно этой проблемы.

0 голосов
/ 30 июня 2010

Если вы нацелились на .NET 4, для него не требуются PIA, он встраивает только те биты, которые ему нужны.

Вы действительно развертываете среду выполнения VSTO 3 с VS2010? Или вы развертываете VSTO 4 (он поставляется с VS2010)?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...