U desktop aplikaciji koristim System.Net.Mail za slanje e-maila preko gmail naloga.
Kod izgleda ovako:
Code:
public static void SendMsg(string username, string password, string to, string subject, string body)
{
MailMessage msg = new MailMessage();
msg.To.Add(to);
msg.From = new MailAddress(username, "Test", System.Text.Encoding.UTF8);
msg.Subject = sub;
msg.SubjectEncoding = System.Text.Encoding.UTF8;
msg.Body = body;
msg.BodyEncoding = System.Text.Encoding.UTF8;
msg.IsBodyHtml = true;
msg.Priority = MailPriority.High;
SmtpClient client = new SmtpClient();
client.UseDefaultCredentials = false;
client.Port = 587;
client.Host = "smtp.gmail.com";
client.Credentials = new NetworkCredential(username, password);
// client.EnableSsl = true;
client.Send(msg);
}
public static void SendMsg(string username, string password, string to, string subject, string body)
{
MailMessage msg = new MailMessage();
msg.To.Add(to);
msg.From = new MailAddress(username, "Test", System.Text.Encoding.UTF8);
msg.Subject = sub;
msg.SubjectEncoding = System.Text.Encoding.UTF8;
msg.Body = body;
msg.BodyEncoding = System.Text.Encoding.UTF8;
msg.IsBodyHtml = true;
msg.Priority = MailPriority.High;
SmtpClient client = new SmtpClient();
client.UseDefaultCredentials = false;
client.Port = 587;
client.Host = "smtp.gmail.com";
client.Credentials = new NetworkCredential(username, password);
// client.EnableSsl = true;
client.Send(msg);
}
I sa ovom metodom mogu poslati e-mail na svaki gmail nalog... ali na bilo koji drugi nalog ne salje.
Tacnije kada udjem u gmail nalog preko kog saljem poruke, u Sent folderu postoje te poruke ali nisu primljene.
Kada omogucim EnableSsl, pojavljuje se greska:
System.Net.Mail.SmtpException: Failure sending mail. ---> System.Net.WebException: The remote name could not be resolved: 'smtp.gmail.com'
Gledao sam po netu, postoji dosta biblioteka za slanje e-maila ali nisu besplatne....
Kako resiti problem i omoguciti da se e-mail posalje na bilo koju adresu?
Mozda ima neka druga ideja, da ne ide preko gmail naloga?