Могу ли я создать.ST Framework 4.6.1 для таргетинга надстроек VSTO, которая работает на всех офисных версиях с 2007 по 2016 год?
У меня есть надстройка для Outlook, разработанная с VS 2008 и для платформы 3.5. Теперь я хочу обновить ее до последней версии (4.6.1). Но когда я пытался создать офисный проект в VS 2012, ориентированный на структуру 4.6.1. показал мне шаблон офиса 2010. Так, разве невозможно разработать надстройку VSTO 2007, которая предназначена для среды 4.6.1? Я хочу придерживаться VSTO 2007, потому что он гарантированно будет работать на всех версиях Office до Office 2016, как мой текущий Надстройка, нацеленная на.net 3.5, делает. Если я разрабатываю надстройку Office 2010, она может привести к сбою в Office 2007. Итак, пожалуйста, дайте мне знать способ разработки надстройки Office, которая поддерживается всеми версиями и целями Office. 4.6.1.
1 ответ
Вы хотите разработать свой плагин для.NET Framework 4.6.1, но по-прежнему ориентированы на Office 2007, так как Office всегда считается "совместимым с предыдущими версиями". Хотя теоретически это так, на практике вы столкнетесь с проблемами (например, Excel со временем изменил модель приложения с MDI на SDI, что привело к возникновению всевозможных проблем с видимостью в надстройках, нацеленных на более старые версии).
То же самое касается.NET Framework. Приложения, ориентированные на более низкую структуру, должны работать с более поздними платформами. Обратный путь может вызвать реальные проблемы.
Поэтому, на мой взгляд, лучший ответ - использовать наименьший знаменатель как в Office PIA, так и в.NET Framework для поддержки старых версий Office. Теоретически это означает, что вы должны оставаться с Office 2007 PIA и.NET 3.5 для лучшей совместимости для всех версий Office начиная с 2007 года и выше. В этом случае все же существует риск несоответствия, как я объяснил в первом абзаце.
В целом, однако, вы можете смешивать и сопоставлять многие версии, если вы обращаетесь только к интерфейсам, доступным в самых старых версиях Office, в особых случаях используйте позднюю привязку.
"Официальный" ответ Microsoft всегда был связан с проектами VSTO, что с каждой версией VSTO поддерживаются только две версии Office, и это (опять же) связано с тем, что уже упоминалось ранее. Дополнительную информацию об этом можно найти здесь: https://msdn.microsoft.com/en-us/library/bb772080(v=vs.120).aspx