2009-09-19 61 views
1

如何在C#2008中打开Outlook Express?从C#中的Outlook Express发送电子邮件

如何将文件从我的应用程序附加到Outlook?

+5

为什么你需要使用Outlook(或Outlook Express)发送电子邮件? C#已经内置了使用'System.Net.Mail'命名空间发送电子邮件的支持。 – 2009-09-19 08:38:00

+2

@vijaii:你的SO博士说你是“ASP.NET,C#,WPF,SQL服务器开发者”,那么这不是你应该能够为自己工作的东西吗?也许甚至尝试搜索引擎? – 2009-09-19 09:09:04

回答

7

Outlook Express中已经过时了这么久我甚至不记得我最后一次竟看到了使用它的人 ...这是一个安全噩梦,以及从Windows久远

据我所知已被删除,Outlook Express没有API来以编程方式操作它(但Outlook是)。正如其他人在评论中所建议的那样,您应该直接从您的C#代码发送邮件,而不涉及Outlook Express。查看MSDN中的System.Net.Mail命名空间,它包含了您可能需要的一切(包括代码示例)

7

正如其他人指出的,如果您只是想发送邮件,最好使用System.Net.Mail。

如果因为某种原因想要使用Outlook发送邮件,则必须使用Office interop。
事情是这样的:

using Outlook = Microsoft.Office.Interop.Outlook; 

    Outlook.Application oApp = new Outlook.Application(); 

         Outlook.MailItem email = (Outlook.MailItem)(oApp.CreateItem(Outlook.OlItemType.olMailItem)); 
         email.Recipients.Add("[email protected]"); 
         email.Subject = "Subject"; 
         email.Body = "Message"; 


         ((Outlook.MailItem)email).Send();