2015-03-10 1 views
1

Я принял участие в разработке проекта VB .NET 3.5. Мне нужно добавить ссылку на Microsoft.Office.Interop.Outlook для Office 2013, но она не отображается в моем списке ссылок на COM. У меня установлен Office 2013. Я пытался найти инсталлятор для ПОО, но я не смог найти его на 2013 годНе удается открыть Office 2013 От кода

enter image description here

Любые предложения?

UPDATE

Я повышен до .NET 4, но я не могу найти «Microsoft Outlook Библиотеку 15,0 Объект» в моих ссылках (см выше изображение). Я попытался установить их с диска Office, но программа была уже установлена. Я также установил средства разработчика Office с диска VS. Я не понимаю, куда взять этот файл.

Я попытался переключиться на позднее связывание со следующим кодом:

Sub DisplayMail() 
    Dim oAPP As Object 
    Dim oItem As Object 
    Const olMailItem As Long = 0 

    oAPP = CreateObject("Outlook.Application") 
    oItem = oAPP.CreateItem(olMailItem) 
    With oItem 
     .To = Me.EmailAddress 
     .Subject = Me.MySubjectTextBox.Text.Trim.Replace("%", "%25").Replace("&", "%26") 
     .Body = Me.EmailMessageBox.Text.Trim.Replace("%", "%25").Replace(vbCr, "%0d%0A").Replace("&", "%26") 
     .Display() 
    End With 
End Sub 

Это работает, когда прогноз закрыт, но если у меня есть открытая Перспективы, я получаю «Не удается создать компонент ActiveX» ошибка.

+1

Больше нет PIA для Office 2013, они устарели, поскольку функция «Вставить типы взаимодействия» добавлена ​​в .NET 4 + VS2010. Вам нужно выбрать «Библиотека объектов Microsoft Outlook 15.0» со вкладки COM. –

+0

@ ХансПасант: Спасибо за ваш ответ. Мой проект находится в .NET 3.5, и мой руководитель предпочел бы, чтобы я его не менял. Прежде чем делать аргумент, я хочу подтвердить, что переход на .NET 4 и использование библиотеки объектов Microsoft 15.0 - лучший способ продолжения. Еще раз спасибо за ваш ответ. – Tim

+0

Застревание 8-летней версии бесплатного программного обеспечения является проблемой, с которой вы не можете получить помощь здесь. [Возможно, здесь] (http://careers.stackoverflow.com/). –

ответ

0

Если вы работаете с Late Binding, а ваше приложение и Outlook работают под разными уровнями доступа, вы получите сообщение «Невозможно создать компонент ActiveX».

В моем случае Visual Studio запускалась как администратор, а Outlook запускался нормально. Я закрыл Outlook и открыл его снова как Администратор, и исключений не было.