Har*_*sai 5 c# email outlook vsto
我正在使用Interop通过Outlook发送电子邮件,但我无法指定From电子邮件地址.
我想向来自同一发件人(来自)的多个用户发送邮件.我需要提一下电子邮件地址.但是,我找不到使用Intellisense的属性,允许我指定它.
请帮忙.
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();
Run Code Online (Sandbox Code Playgroud)
ruh*_*hil 13
您正在使用outlook发送邮件.由于outlook必须配置为使用from您的邮件地址,因此您无法from直接提供地址.但是,您可以选择Outlook上可用的帐户.例如 :
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 == "from@mail.com")
{
olkMail1.SendUsingAccount = account;
((Outlook._MailItem)olkMail1).Send();
break;
}
}
Run Code Online (Sandbox Code Playgroud)
该发送方法发送使用默认的帐户的邮件.要指定另一个帐户来发送邮件,请在调用Send方法之前将SendUsingAccount属性设置为所需的帐户.
var application = new Application();
var mail = (_MailItem) application.CreateItem(OlItemType.olMailItem);
mail.To = "anonymous@somedomain.com";
....
Outlook.Account account = Application.Session.Accounts["MyOtherAccount"];
mailItem.SendUsingAccount = account;
mail.Send();
Run Code Online (Sandbox Code Playgroud)
更多信息可以在这里找到:
http://msdn.microsoft.com/en-us/library/ff184652.aspx