C# 调用Outlook发邮件时,提示报错。

asd939393 2015-08-08 04:10:37
C# 调用Outlook发邮件时会报以下错误。
system.Runtime.InteropServices.COMException (0x80080005): 检索 COM 类工厂中 CLSID 为 {0006F03A-0000-0000-C000-000000000046} 的组件失败,原因是出现以下错误: 80080005 服务器运行失败 (异常来自 HRESULT:0x80080005 (CO_E_SERVER_EXEC_FAILURE))。

如果不打开outlook直接点击发邮件,是可以弹出outlook界面并添加附件。但如果人员手动打开outlook,再去点软件发送邮件就会报以上错误。高手帮忙看看。!!!!!

我的程序语言就以下几句代码:
Microsoft.Office.Interop.Outlook.Application app = new Microsoft.Office.Interop.Outlook.Application();

Microsoft.Office.Interop.Outlook.MailItem mail = (Microsoft.Office.Interop.Outlook.MailItem)app.CreateItem(Microsoft.Office.Interop.Outlook.OlItemType.olMailItem);

mail.Attachments.Add(@path, Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue, Type.Missing, Type.Missing);

mail.Display(true);

mail = null;
app = null;
...全文
335 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ajianchina 2015-08-08
  • 打赏
  • 举报
回复
进入组件服务面板: 运行 --> dcomcnfg
ajianchina 2015-08-08
  • 打赏
  • 举报
回复
步骤是老外说的,不行你再问其他人。 首先必须安装office的.net可编程性 步骤: 控制面板-->添加或删除程序-->选择Microsoft Office-->点击”更改“ 然后在安装界面中选择添加功能,把.NET可编程性选上,安装。 接下来在组件服务的面板--> DCOM配置 Outlook --> 属性-->许可编程启动Outlook-->分配权限(Network、NetworkService、Root/Admin users)

110,537

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧