2009-09-19 57 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();