使用Microsoft Outlook从Asp.Net Webform应用程序发送电子邮件
我有一个asp.net
网页表单,点击一个按钮发送我想要一封电子邮件发送到我的Microsoft Outlook电子邮件帐户。我这样做对其他使用Microsoft Outlook从Asp.Net Webform应用程序发送电子邮件
网站,但使用的是Hotmail,这是但所有外部Web的电子邮件提供商都通过防火墙的公司受阻(如我试图建立一个Gmail帐户),所以
我需要使用Outlook,但我没有想法如何实现这一点,我在Google上看到的解决方案似乎不工作。我不知道这是否会成为一个
差或没有,但我已经被告知,用户密码epxires每30天所以我怀疑我需要使用windows authenication什么
,但不能确定。
我不知道如何展望从过去的经验,从使用的邮件仅仅是一个按钮的点击发送的Hotmail发送电子邮件,因为我知道,但我
不知道面貌将打开电子邮件窗口供用户点击发送按钮。如果确实如此,我需要在网络表单上捕获的信息为
包含在电子邮件中并且电子邮件正文的内容不会被更改(如果可以这样做,则不确定它是否可以但不是问题如果它
不能)。
下面是我用于当我尝试Gmail的代码,但正如我所说我被告知它不会被允许。
编辑2:现在,我们已经建立了你的经历exchance这是怎么了我的代码一贯致力于
SmtpClient sptmClient = new SmtpClient("exchange server name")
MailMessage m = new MailMessage();
m.To.Add(new MailAddress("Address"));
m.From = new MailAddress("");
m.Subject = "";
m.Body = "";
m.IsBodyHtml = true;
sptmClient.Send(m);
但使用Outlook interoperlation在这里另外一个答案,可能更好地为您
我完全不能使用Gmail。电子邮件发送功能需要使用Microsoft Outlook(而不是Outlook.com)。然后,这将会从另一个用户的电子邮件地址发送一封电子邮件,并且还需要CC向我刚才告诉的另一个用户发送电子邮件。 – murday1983
@ murday1983对不起,我刚才看到这个评论。使用GMail,你必须减少你的Gmail安全设置。它也是一只绝对的猪。但尝试发送,你会收到来自Gmail的消息,然后你可以通过你的设置,并可能需要更改密码,并需要检查一些框,说你接受安全性较低的风险 –
随着交换它必须工作。
测试:
using Outlook = Microsoft.Office.Interop.Outlook;
private void SendWithExchange()
{
Outlook.Application oApp = new Outlook.Application();
Outlook.MailItem mail = oApp.CreateItem(
Outlook.OlItemType.olMailItem) as Outlook.MailItem;
mail.Subject = "Exemple à tester";
Outlook.AddressEntry currentUser =
oApp.Session.CurrentUser.AddressEntry;
if (currentUser.Type == "EX")
{
Outlook.ExchangeUser manager =
currentUser.GetExchangeUser();
mail.Recipients.Add(manager.PrimarySmtpAddress);
mail.Recipients.ResolveAll();
//mail.Attachments.Add(@"c:\sales reports\fy06q4.xlsx",
// Outlook.OlAttachmentType.olByValue, Type.Missing,
// Type.Missing);
mail.Send();
}
}
您正试图通过谷歌的SMTP代理从本地帐户发送? –
@PatrickHofman上面的代码是我使用过的,用于从hotmail accounf发送电子邮件到另一个hotmail acc。我知道这个代码不适用于Microsoft Outlook,正如我所说的所有网络电子邮件(Hotmail,Gmail,雅虎等)都被阻止了。如果你有一个建议来清理上面的代码,请帮助,我可以看看它是否会起作用。 – murday1983
是的,使用您工作地点的服务器设置。 –