InvalidCastException в надстройке VSTO - PullRequest
0 голосов
/ 28 января 2010

У меня возникла странная проблема с надстройкой VSTO Outlook, которую я разрабатываю. Он отлично работает на множестве машин, но на одном он генерирует исключение InvalidCastException и не может найти причину. Я проверил, что все необходимые компоненты установлены на этом компьютере (установщик делает это самостоятельно, но я также проверил это вручную), и все выглядит точно так же, как на других машинах.

Код, выдавший исключение:

this.Application.Session.
    GetDefaultFolder(Outlook.OlDefaultFolders.olFolderCalendar).Items.
    OfType<Outlook.AppointmentItem>();

и исключение:

Невозможно привести объект COM типа «Microsoft.Office.Interop.Outlook.ApplicationClass» к типу интерфейса «Microsoft.Office.Interop.Outlook._Application». Эта операция завершилась неудачно, потому что произошел сбой вызова QueryInterface в компоненте COM для интерфейса с IID '{00063001-0000-0000-C000-000000000046}' из-за следующей ошибки: Библиотека не зарегистрирована. (Исключение из HRESULT: 0x8002801D (TYPE_E_LIBNOTRurable)).

У кого-нибудь есть идеи, в чем может быть проблема?

1 Ответ

0 голосов
/ 13 февраля 2010

Убедитесь, что у вас установлена ​​среда выполнения VSTO и правильная версия (OL2003 / OL2007) PIA. Иногда это может быть проблема политики CAS http://msdn.microsoft.com/en-us/library/zdc263t0.aspx

...