我正在开发的vsto outlook外接程序遇到了一些奇怪的问题。它在许多机器上都可以正常工作,但在一台机器上却抛出了一个无效的castexception,并且找不到原因。我已经检查过所有的先决条件都安装在这台机器上(安装程序自己做的,但我也手工检查过),而且所有的东西都和其他机器上的完全一样。
引发异常的代码是:
this.Application.Session.
GetDefaultFolder(Outlook.OlDefaultFolders.olFolderCalendar).Items.
OfType<Outlook.AppointmentItem>();
例外情况是:
无法将“microsoft.office.interop.outlook.applicationClass”类型的COM对象强制转换为接口类型“microsoft.office.interop.outlook.\u application”。此操作失败,因为IID为“00063001-0000-0000-C000-00000000000000046”的接口的COM组件上的QueryInterface调用由于以下错误而失败:库未注册。(来自hresult的异常:0x8002801d(type_e_libnotregistered))。
有人知道可能是什么问题吗?