使用Outlook 2010发送邮件时发出问题

时间:2014-09-01 06:57:53

标签: c# asp.net winforms outlook

在我的应用程序中使用outlook 2010发送邮件时,我遇到了一个问题。

当我单击按钮执行邮件功能时,会出现一个对话框,要求用户允许或拒绝应用程序使用Outlook帐户发送邮件。如果我允许,那么电子邮件将成功发送,但如果拒绝,那么我收到此错误

  

'操作中止(HRESULT异常:0x80004004(E_ABORT))'。

在没有要求用户批准的情况下发送邮件的可能方式是什么。

1 个答案:

答案 0 :(得分:0)

以下代码可以完成您的工作:

     app = new Microsoft.Office.Interop.Outlook.Application();
     Microsoft.Office.Interop.Outlook.NameSpace ns = app.GetNamespace("MAPI");
     f = ns.GetDefaultFolder(OlDefaultFolders.olFolderInbox);
     Thread.Sleep(5000); // a bit of startup grace time.

另一种方法是为新创建的

获取Inspector对象
     Outlook.Application oApp = new Outlook.Application();
     Outlook.MailItem oMsg = (Outlook.MailItem)oApp.CreateItem(Outlook.OlItemType.olMailItem);
     Outlook.Inspector oInspector = oMsg.GetInspector;

后一个答案最初发布于Google groups,最初适用于Outlook 2007,但它也适用于Outlook 2010