【发布时间】:2023-04-10 07:36:01
【问题描述】:
尝试通过 Outlook 自动生成邮件消息 -
添加了对 Microsoft.Office.Interop.Outlook 14.0.0.0 的引用
它可以在 Win 8/Office 2013 PC 上运行,但在 Win 7/Office 2010 上失败并出现以下异常。
代码:
Application outlookApp = new Application();
MailItem message = (MailItem)outlookApp.CreateItem(OlItemType.olMailItem);
message.Subject = "subject";
message.Display(message);
message.HTMLBody = "body" + message.HTMLBody; //to get default signature
例外是:
无法将“System.__ComObject”类型的 COM 对象转换为接口 键入“Microsoft.Office.Interop.Outlook.Application”。这 操作失败,因为 COM 上的 QueryInterface 调用 带有 IID 的接口组件 “{00063001-0000-0000-C000-000000000046}”由于以下原因而失败 错误:库未注册。 (来自 HRESULT 的异常:0x8002801D (TYPE_E_LIBNOTREGISTERED))。
【问题讨论】:
-
这个例外提供了很多关于如何解决它的信息。您是否在 (TYPE_E_LIBNOTREGISTERED) 上查找过任何内容?