【问题标题】:Receiving the list of contacts from Outlook从 Outlook 接收联系人列表
【发布时间】:2015-03-14 15:59:46
【问题描述】:
 Microsoft.Office.Interop.Outlook.Application outlookObj;
 outlookObj = new Microsoft.Office.Interop.Outlook.Application();

程序启动时出错

{ "由于以下错误,未能成功接收 CLSID {0006F03A-0000-0000-C000-000000000046} 组件的 COM 类工厂,因为以下错误:80080005 附录服务器实现错误(异常HRESULT:0x80080005 (CO_E_SERVER_EXEC_FAILURE))。” }

错在什么地方?

【问题讨论】:

  • 你在哪里运行代码?它是 Windows 服务吗?

标签: outlook


【解决方案1】:

CO_E_SERVER_EXEC_FAILURE 通常意味着您的代码和 Outlook 在不同的安全上下文中运行。任一应用程序是否以提升的权限运行(以管理员身份运行)?您的应用是否作为服务运行?

【讨论】:

    【解决方案2】:

    如果您在服务器端或从任何非交互式客户端运行代码:

    Microsoft 目前不推荐也不支持从任何无人值守的非交互式客户端应用程序或组件(包括 ASP、ASP.NET、DCOM 和 NT 服务)自动化 Microsoft Office 应用程序,因为 Office在此环境中运行 Office 时可能会出现不稳定的行为和/或死锁。

    如果您要构建在服务器端上下文中运行的解决方案,您应该尝试使用已确保无人值守执行安全的组件。或者,您应该尝试找到允许至少部分代码在客户端运行的替代方案。如果您使用服务器端解决方案中的 Office 应用程序,该应用程序将缺少许多成功运行所需的功能。此外,您将在整体解决方案的稳定性方面承担风险。

    您可以在Considerations for server-side Automation of Office 文章中阅读更多相关信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-22
      • 1970-01-01
      相关资源
      最近更新 更多