我想從我的C#.NET應用程序發送郵件,我用這個代碼:發送郵件與Outlook.Application C#
var mailItem = (Outlook.MailItem)oApp.CreateItem(Outlook.OlItemType.olMailItem);
mailItem.Subject = "Error Report from user: " + AuthenticationManager.LoggedInUserName;
mailItem.HTMLBody = "Test email\n"+ReadSignature();
mailItem.To = "[email protected]";
mailItem.Display(true);
郵件不會發送,而是加入到發件箱文件夾。我懷疑郵件沒有發送,因爲Outlook未啓動。所以我google了一下,想出了這個:
var oApp = new Outlook.Application();
Microsoft.Office.Interop.Outlook.NameSpace ns = oApp.GetNamespace("MAPI");
var f = ns.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox);
Thread.Sleep(5000); // a bit of startup grace time.
var mailItem = (Outlook.MailItem)oApp.CreateItem(Outlook.OlItemType.olMailItem);
mailItem.Subject = "Error Report from user: " + AuthenticationManager.LoggedInUserName;
mailItem.HTMLBody = "Test email\n"+ReadSignature();
mailItem.To = "[email protected]";
mailItem.Display(true);
但它再次結束在發件箱文件夾。我需要啓動outlook,因爲我無法在每個客戶端application.config中指定FromMail屬性。有任何想法嗎?
如果您正在使用的Web應用程序,那麼你可以從郵件在web.config文件 – user1102001
配置你真的需要這個矯枉過正只需發送簡單的電子郵件?有些課程允許在沒有Outlook的情況下直接發送郵件。 – Rafal