new Outlook.Application() thorws error if Outlook app is running
您好,我也有类似的问题
当 Outlook 在不同帐户下运行时,Outlook.Application 上的 CreateObject 在 Outlook 2010 上失败
但想要定制解决方案。
我想发送带有我的代码适用的附件的电子邮件,但如果 OutLook 应用程序已作为桌面应用程序打开,那么我会收到此错误。
要求:我想打开 Outlook 窗口,显示我们在窗口中撰写消息时的所有内容。
我正在这样做:
1 | Microsoft.Office.Interop.Outlook.Application outlookApp = new Outlook.Application(); |
如果 OutLook 应用程序正在运行,则会出现此错误。
1 2 3 4 | 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\ eports\ eportViewerControl.ascx.cs:line 262 |
当我关闭 OutLook 时没有错误,一切都按我的意愿运行。我不想像这里建议的其他解决方案那样以语法方式关闭 OutLook
我正在使用的还有 1 件事需要提及
Microsoft.Office.Interop.Outlook.dll
这是 32 位/64 位的问题吗?还是必须使用其他一些新的 Dll?
错误是 CO_E_SERVER_EXEC_FAILURE。如果您的应用程序和 Outlook 的安全上下文不同,很可能会发生这种情况。任一应用程序是否以提升的权限运行(以管理员身份运行)?
我终于找到了答案。我测试了它的工作原理。
在这里找到
点击这里