У меня есть проект надстройки Outlook, который был впервые разработан в Visual Studio 2008 с использованием VSTO 3.0 и нацелен на Outlook 2007. В этом проекте было несколько пользовательских областей форм, которые добавили функциональные возможности к определенным инспекторам AppointmentItem и TaskItem, которые были успешно добавили в проект и работали нормально.
В конце прошлого года мы сделали скачок к VS2010 и в то же время приняли решение ориентироваться на версии Outlook 2007 и 2010 года. Проектное преобразование, казалось, прошло гладко, я изменил цель проекта, чтобы использовать VSTO 4.0 (добавив код обработки версии согласно предложению в этой статье: http://blogs.msdn.com/b/vsto/archive/2010/06/04/creating-an-add-in-for-office-2007-and-office-2010-that-quot-lights-up-quot-on-office-2010-mclean-schofield.aspx), и все выглядело хорошо. Существующие области формы работают без проблем в и 2007, и 2010 год.
Я добавляю некоторые новые функции в надстройку, и сегодня я решил добавить новую область формы в проект в рамках этой работы. Когда я это сделал, VS2010 автоматически добавил сборку VSTO 3 в проект (в частности: Microsoft.Office.Tools.Outlook.v9.0.dll), что вызвало все виды коллизий пространства имен и активно испортило конструктор области формы.
Я перепробовал все, что мог, чтобы предотвратить автоматическое добавление этой сборки VS2010, включая ручное редактирование файла csproj, чтобы убедиться, что нет ссылок на VSTO 3, - но такое поведение сохраняется. Каждый раз, когда я добавляю область формы (используя «Добавить элемент» -> «Область формы Outlook»), VS2010 настаивает на добавлении вышеупомянутой сборки, что приводит к хаосу в моем проекте. Кто-нибудь сталкивался с таким поведением в VS2010? И есть ли обходной путь?
Заранее спасибо. Пожалуйста, дайте мне знать, если потребуется дополнительная информация.