В чем разница между Microsoft.Office.Interop. * Версии 12 и 14? - PullRequest
6 голосов
/ 13 октября 2011

Я установил Visual Studio 2010 и Office 2007. Когда я иду в «Добавить ссылку» и ищу « Office Interop », я вижу, что каждая из ссылок появляется дважды с версиями 12 и 14.

Сначала я попробовал 14 версию Microsoft.Office.Interop.Word и провел быстрый тест. Инициализируйте приложение, откройте документ, закройте документ, выйдите из приложения и освободите объект COM. Мой тест был простой программой WinForms на C # 4.0.

Ошибка WINWORD.EXE при закрытии документа.

Я переключил ссылку на версию 12, оставил свой код в точности таким, каким он был, и попробовал снова. Все работало нормально.

С тех пор я написал оставшуюся часть кода, используя версию 12. У меня не было проблем.

Так что теперь мне любопытно: есть некоторые небольшие различия между публично выставленными членами в Microsoft.Office.Interop.* в версиях 12 и 14, но в значительной степени есть много совпадений.

Какая разница? Почему мой простой тест не прошел, хотя у меня относительно новая версия Office? и есть ли практическое правило относительно того, какую версию должен выбрать разработчик при запуске проекта взаимодействия?

1 Ответ

16 голосов
/ 13 октября 2011

Версия 12 - это взаимодействие для Office 2007, а 14 - для Office 2010. AFAIK. Если вам не нужны некоторые новые функции 14-й версии, вы можете использовать более низкую версию библиотеки взаимодействия, и она будет хорошо работать для всех новых версийОфис.

...