【问题标题】:new Outlook.Application() thorws error if Outlook app is running如果 Outlook 应用程序正在运行,新 Outlook.Application() 将引发错误
【发布时间】:2017-08-16 05:21:43
【问题描述】:

你好,我也有类似的问题

CreateObject on Outlook.Application fails on Outlook 2010 when Outlook is running under a different account

但想要定制的解决方案。

我想发送带有我的代码适用的附件的电子邮件,但如果 OutLook 应用程序已作为桌面应用程序打开,那么我会收到此错误。

要求:我想打开 Outlook 窗口,显示我们在窗口中撰写消息时的所有内容。

我正在这样做:

Microsoft.Office.Interop.Outlook.Application outlookApp = new Outlook.Application();

如果 OutLook 应用程序正在运行,则会出现此错误。

Error sending a report: System.Runtime.InteropServices.COMException (0x80080005): Retrieving the COM class factory for component with CLSID {0006F03A-0000-0000-C000-000000000046} failed due to the following error: 80080005 Server execution failed (Exception from HRESULT: 0x80080005 (CO_E_SERVER_EXEC_FAILURE)).
at ReportViewerControl.SendOutLookMail_Click(Object sender, EventArgs e) in c:\Projects\MSCatalog\MS SQLSERVER\Web\UserControls\Reports\ReportViewerControl.ascx.cs:line 262

当我关闭 OutLook 时没有错误,一切都按我的意愿运行。我不想像这里建议的其他解决方案那样以编程方式关闭 OutLook

我正在使用的还有 1 件事需要提及 Microsoft.Office.Interop.Outlook.dll 这是 32 位/64 位的问题吗?还是必须使用其他一些新的 Dll?

【问题讨论】:

    标签: email outlook com


    【解决方案1】:

    错误是 CO_E_SERVER_EXEC_FAILURE。如果您的应用程序和 Outlook 的安全上下文不同,很可能会发生这种情况。任一应用程序是否以提升的权限运行(以管理员身份运行)?

    【讨论】:

    • 是的,我的应用以管理员身份在 Visual Studio 2010 中运行。
    • 尝试从 Windows 资源管理器运行它。或者也以管理员身份运行 Outlook。
    • 是的,我以管理员身份尝试了 OutLook,它可以工作,但是其他用户在机器上没有管理员权限并以普通用户身份运行 Oulook 呢?此发送电子邮件功能将使应用程序崩溃
    • 但他们也不会以管理员身份运行您的应用程序,对吧?只要两个安全上下文相同,它就可以工作。
    • 尝试从具有相同权限的 IE 将其发布到 IIS 后出现此错误 发送报告时出错:System.Runtime.InteropServices.COMException (0x80040111):无法创建电子邮件,因为数据文件无法找到发送和接收消息。检查您在此 Microsoft Outlook 配置文件中的设置。在 Microsoft Windows 中,单击开始按钮,然后单击控制面板。单击用户帐户,然后单击邮件。单击显示配置文件,选择此配置文件,然后单击属性。服务器不可用。如果这种情况仍然存在,请联系您的管理员。在
    【解决方案2】:

    我终于找到了答案。我进行了测试,它的工作原理。

    1. 在开始菜单中选择运行
    2. 输入 dcomcnfg 并单击确定
    3. 组件服务窗口已打开。
    4. 展开节点 Component Services -> MyComputer -> DCOM Config。
    5. 右键单击应用程序(Outlook 邮件附件)并选择属性。
    6. 如有必要,请单击“身份”选项卡。
    7. 点击“交互式用户”,然后确定

    在这里找到

    Click Here

    【讨论】:

      猜你喜欢
      • 2019-05-06
      • 2020-07-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多