I'm using Interop for sending e-mails via Outlook, but I am not able to specify the From e-mail address.
I want to send mails to multiple users originating from the same sender (from). I need to mention the from e-mail address. However I cannot find a property using Intellisense that allows me to specify it.
Please help.
Microsoft.Office.Interop.Outlook.Application olkApp1 =
new Microsoft.Office.Interop.Outlook.Application();
Microsoft.Office.Interop.Outlook.MailItem olkMail1 =
(MailItem)olkApp1.CreateItem(OlItemType.olMailItem);
olkMail1.To = txtpsnum.Text;
olkMail1.CC = "";
olkMail1.Subject = "Assignment note";
olkMail1.Body = "Assignment note";
olkMail1.Attachments.Add(AssignNoteFilePath,
Microsoft.Office.Interop.Outlook.OlAttachmentType.olByValue, 1,
"Assignment_note");
olkMail1.Save();
//olkMail.Send();
You are using outlook to send the mail. Since outlook must be configured to use the from
address of your mail, you cannot provide the from
address directly. However, you can select an account available on outlook. For example :
using Outlook = Microsoft.Office.Interop.Outlook;
Outlook.Accounts accounts = olkApp1.Session.Accounts;
foreach (Outlook.Account account in accounts)
{
// When the e-mail address matches, send the mail.
if (account.SmtpAddress == "[email protected]")
{
olkMail1.SendUsingAccount = account;
((Outlook._MailItem)olkMail1).Send();
break;
}
}
The Send method sends the mail using the default account. To specify a different account to send the mail, set the SendUsingAccount property to the desired Account prior to calling the Send method.
var application = new Application();
var mail = (_MailItem) application.CreateItem(OlItemType.olMailItem);
mail.To = "[email protected]";
....
Outlook.Account account = Application.Session.Accounts["MyOtherAccount"];
mailItem.SendUsingAccount = account;
mail.Send();
More information can be found here:
http://msdn.microsoft.com/en-us/library/ff184652.aspx
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With