Взаимодействие с Office 2003 только с установленным Office 2010 - PullRequest
4 голосов
/ 21 сентября 2010

У нас есть приложение (.NET 2.0), которое использует функции Outlook 2003 (библиотека объектов Microsoft Office 11.0). На моем новом компьютере установлены Windows 7 и Office 2010, и ссылки больше не работают (доступна только библиотека объектов Office 14).

Можно ли использовать библиотеки Office 2003 при установке Office 2010 (я слышал, что 2003 и 2010 не могут быть установлены на одном компьютере)? Я пытался установить «Распространяемые основные сборки взаимодействия» для Office 2003, но не смог сделать это без установленного Office 2003.

Ответы [ 3 ]

5 голосов
/ 21 сентября 2010

Вместо того, чтобы ссылаться на конкретную версию библиотек, используйте позднюю привязку.Таким образом, вы можете разрабатывать для одной версии, но если вы будете использовать общие функции, она будет работать и в других версиях.

Эта статья объясняет разницу Связывание для серверов автоматизации Office с VisualC # .NET

Проще сделать разработку с использованием раннего связывания, чтобы вы получили Intellisense, а затем удалили ссылки (что займет немного времени. Если оно того стоит, зависит немного отВаш уровень квалификации с развитием Office.

1 голос
/ 07 января 2014

Я сомневаюсь, что у kor_ все еще есть эта проблема, но мне было трудно найти помощь по этому.

У меня была похожая проблема, и после долгих поисков я обнаружил NetOffice. Это оболочка для COM-объекта, поэтому вы можете получить совместимость с поздним связыванием без изменения кода.

Я считаю, что PIA все еще должны быть установлены пользователем вместе с офисом.

http://netoffice.codeplex.com/

0 голосов
/ 21 января 2014

При позднем связывании вы можете удалить любую ссылку на Office Interop dll's.У нас та же проблема, что и у вас, и это работает:

Dim OutlApp As Object
Dim NewEmail As Object

OutlApp = CreateObject("Outlook.Application")
NewEmail = OutlApp.CreateItem(0) 
...