Greitai ir lengvai: Siųsti laiškus naudojant Gmail SMTP serverio .NET C#

Tai nėra tiksliai naują temą, bet kai reikia tai padaryti, Radau daug "kodėl ne šis darbas man" ir ne per daug tiesioginių atsakymų. Tikiuosi, kad kas nors mano, kad tai naudinga.

Į šiuos šiek tiek kodas atsiųs el. laišką naudodami savo "Gmail" paskyrą tai padaryti, įskaitant priedus:

naudojant System.Net.Mail;
naudojant System.Net;

NetworkCredential loginInfo = naujas NetworkCredential("[Mano Gmail numeris]", "[Mano Gmail slaptažodį]");
MailMessage MSG = naujas MailMessage();
MSG.Nuo = naujas MailAddress("[M Gmail numeris]@gmail.com");
MSG.To.Add(naujas MailAddress("paul.galvin@arcovis.com"));
MSG.Tema = "Bandymo infopath dev objektas";
MSG.Įstaiga = "<HTML><įstaiga><stiprus>Aiškią žinią.</stiprus></įstaiga></HTML>";
MSG.IsBodyHtml = tiesa;

foreach (eilutė aFile į NIPFD.GetAttachmentNamesAndLocations())
{
    MSG.Attachments.Add(naujas Priedas(aFile));
} // Pridėti priedai.

SmtpClient klientas = naujas SmtpClient("smtp.gmail.com");
klientas.EnableSsl = tiesa;
klientas.UseDefaultCredentials = klaidinga;
klientas.Kredencialų = loginInfo;
klientas.Port = 587;
klientas.EnableSsl = tiesa;
klientas.Siųsti(MSG);

Keletas pagrindinių bitai, kad man sulėtėjo ir kiti pastebėjimai / pastabos:

NetworkCredential loginInfo = naujas NetworkCredential("sharepoint", "xyzzy");

  • Mano Gmail yra nustatyti naudoti SSL ir tai nebuvo problema.
  • Yra šiek tiek prieštaringi informacijos ten kokį prievadą naudoti. Aš uosto 587 ir tai kuo puikiausiai man.
  • Mano atveju, Taip pat reikia siųsti priedus. Kad NIPFD objektas yra metodas, kuris žino, kur mano priedai. Jis grįžta visiškai kelias (pvz.. "c:\tempattachment1.jpg". Mano bandymas, Aš turėjau du priedai ir jie abu kuo puikiausiai.

Aš vaizdo studija 2008 parašyti šį kodą.

</pabaigos>

Prenumeruoti savo dienoraštį.

Sekite mane Twitter ne http://www.twitter.com/pagalvin

Technorati Tags: ,,,

2 mintys apie "Greitai ir lengvai: Siųsti laiškus naudojant Gmail SMTP serverio .NET C#

  1. Jeff

    PowerShell komandą dienoraštį neseniai turėjo panašų pranešimą, kad radau neįkainojama kaip serverio administratorius. Visual Studio yra puikus, bet daugelis mano bendraamžių nėra kūrėjai ir neturite įsigyti licenciją. "PowerShell" mano daugiau kaip į komandų eilutę ir daugiau pasieksite jiems. Tik pasiūlymas, bet administratoriai ten.

    Geriausia,
    Jeff (www.spjeff.com / @spjeff)

    Siųsti automatizuota laiškus su siųsti-MailMessage

    http://blogs.msdn.com/powershell/archive/2009/10/30/sending-automated-emails-with-send-mailmessage-convertto-html-and-the-powershellpack-s-taskscheduler-module.aspx

    Atsakyti

Palik atsakymą į Jeff Atšaukti atsakymą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *