Итак, я пытаюсь сделать простое консольное приложение для отправки электронных писем несколько раз в день, я могу сделать эту работу при использовании учетной записи Gmail в качестве учетной записи отправителя, но когда я пытаюсь использовать свою учетную запись Office 365, это не работает, ive попробовал оба порта 25 и 587, и я ничего не получил.
при отправке из Gmail и порта 465 я получаю Начать отправку электронной почты через SSL ... электронное письмо было успешно отправлено! Нажмите любую клавишу для продолжения . . .
, но с моей офисной учетной записью я получаю это - Начать отправку электронной почты через SSL ... не удалось отправить электронное письмо со следующей ошибкой: попытка подключения не удалась, потому что подключенная сторона не ответила должным образом через определенный период времени , или установленное соединение не удалось из-за того, что подключенный хост не ответил. Нажмите любую клавишу, чтобы продолжить. . .
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using EASendMail;
amespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
try
{
SmtpMail oMail = new SmtpMail("TryIt");
SmtpServer oServer = new SmtpServer("smtp.office365.com");
oServer.User = "user@****.org;
oServer.Password = "**********";
oServer.Port = 587;
oServer.ConnectType = SmtpConnectType.ConnectSSLAuto;
SmtpClient oSmtp = new SmtpClient();
oMail.From = "user@****.org";
oMail.To = "user@gmail.com";
oMail.Subject = "test E-Mail Notifications";
//oMail.TextBody = "this is a test email sent from c# project.";
oMail.TextBody = "this is a test email sent from c# project.";
Console.WriteLine("Start sending email over SSL...");
// add this line here to generate log file
oSmtp.LogFileName = "c:\\smtp.txt";
oSmtp.SendMail(oServer, oMail);
Console.WriteLine("email was sent successfully!");
}
catch (Exception ep)
{
Console.WriteLine("failed to send email with the following error:");
Console.WriteLine(ep.Message);
}
}
}
}
}