To nie je úplne novú tému, ale keď som musel urobiť, Našiel som veľa "prečo nie je táto práca pre mňa" a nie príliš veľa priamych odpovede. Dúfam, že niekto nájde to užitočné.
Nasledujúce bitový kód bude pošlite e-mail pomocou vlastné gmail účtu na to, vrátane príloh:
pomocou System.Net.Mail; pomocou System.Net; NetworkCredential loginInfo = nové NetworkCredential("[Môj Gmail ID]", "[Môj Gmail heslo]"); MailMessage MSG = nové MailMessage(); MSG. Z = nové MailAddress("[M Gmail Id]@gmail.com"); MSG. To.Add(nové MailAddress("paul.galvin@arcovis.com")); MSG. Predmetom = "Skúšobný program infopath dev predmet"; MSG. Telo = "<HTML><telo><silné>Silné posolstvo.</silné></telo></HTML>"; MSG. IsBodyHtml = pravda; foreach (reťazec aFile v NIPFD. GetAttachmentNamesAndLocations()) { MSG.Attachments.Add(nové Príloha(aFile)); } // Pridanie príloh. SmtpClient klient = nové SmtpClient("smtp.gmail.com"); klient.EnableSsl = pravda; klient.UseDefaultCredentials = FALSE; klient.Poverenia = loginInfo; klient.Port = 587; klient.EnableSsl = pravda; klient.Odoslať(MSG); |
Niekoľko kľúčových kúsky, ktoré spomalil ma a ďalšie pripomienky / poznámky:
- Prvý riadok, ktorý vytvorí objekt loginInfo musí používať gmail ID zbavený "@gmail.com”. Takže, Ak je môj gmail e-mailovú adresu "sharepoint@gmail.com"a heslo je"minového"potom riadok bude vyzerať:
NetworkCredential loginInfo = nové NetworkCredential("sharepoint", "xyzzy minového");
- Môj účet gmail je nastavený na používanie protokolu SSL a ktorý nebolo problém.
- Tam je nejaký konfliktných informácií tam o čo port používať. Použil som portu 587 a fungovalo to pokutu za mňa.
- V mojom prípade, Tiež som potreboval poslať príloh. Že NIPFD objekt má metóda, že vie, kde sú moje príloh. To sa vracia plne cesta (napr.. "c:\tempattachment1.jpg". V mojom teste, Mal som dve prílohy a obaja pracovali dobre.
Použil som programu visual studio 2008 napísať tento kód.
</koniec>
Nasledujte ma na stebėtų na http://www.twitter.com/pagalvin
Čisté a jednoduché…
Vďaka za zdieľanie.
PowerShell Team blog nedávno mal podobný príspevok, ktorý som nájsť neoceniteľný ako server admin. Visual Studio je skvelý, ale mnoho mojich rovesníkov nie sú vývojárom a nemáte licenciu zakúpili. PowerShell vylepšíte príkazového riadku a je prístupnejší k nim. Je to len návrh pre všetky adminy vonku.
Najlepšie,
Jeff (www.spjeff.com / @spjeff)
Odosielanie automatizované e-maily s Odoslať-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