Rad s e-poštom. Programsko slanje e-pošte korištenjem raznih usluga Slanje poruke na poštu c

Zapovjednik broda 14. listopada 2013. u 19:29 sati

Programski pošaljite e-poštu pomoću razne usluge

  • .NETO,

Vrlo često morate imati posla s slanjem e-poruke iz programskog koda. Za primjerima ne morate ići daleko.

Ovaj članak je nagovještaj i ne otkriva ništa novo, ali prije nego što sam ga napisao, pogledao sam nešto slično na internetu i prilično se iznenadio što gotovo svugdje nude ili nefunkcionalno ili zastarjelo rješenje, ili je jednostavno nepismeno napisano.

Prva stvar koju ne smijete raditi s ovim primjerima je korištenje System.Web.Mail, koji je već dugo zastario, a počevši od Vizualni studio 2010., ne možete ni dodati biblioteku System.Web bez poznavanja punog puta do odgovarajućeg DLL-a.
Umjesto toga, predlaže se korištenje knjižnice System.Net.
koristeći System.Net; korištenjem System.Net.Mail;
Dakle, najjednostavnije, najvažnije i često korišteno je slanje vašeg pisma poslužitelj pošte na kojem je konfiguriran SMTP klijent. Kao što razumijete, poslužitelj može biti ili onaj na kojem se pokreće aplikacija ili udaljeni, na kojem imate pravo slati pisma bez dodatne autorizacije.

Primjer koda za slanje pisma s lokalnog stroja:
", "[e-mail zaštićen]")) (mm.Subject =" Predmet pošte "; mm.Body =" Tijelo pošte "; mm.IsBodyHtml = false; koristeći (SmtpClient sc = novi SmtpClient (" 127.0.0.1 ")) (// Adresa bi trebala biti ovdje poslužitelj pošte i port ako je potrebno sc.Pošalji (mm;))

Korištenje poštanske usluge kao što su Gmail, Yandex, Mail.ru itd. sve je isto, samo se dodaju parametri s autorizacijom.

SMTP poslužitelj: smtp.gmail.com
Luka: 587
koristeći (MailMessage mm = nova MailMessage ("Naziv ", "[e-mail zaštićen]")) (mm.Subject =" Predmet pošte "; mm.Body =" Tijelo pošte "; mm.IsBodyHtml = false; koristeći (SmtpClient sc = novi SmtpClient (" smtp.gmail.com ", 587)) (sc. EnableSsl = true; sc.DeliveryMethod = SmtpDeliveryMethod.Network; sc.UseDefaultCredentials = false; sc.Credentials = novi NetworkCredential (" [e-mail zaštićen]"," GmailPassword "); sc.Send (mm);))

SMTP poslužitelj: smtp.yandex.ru
Luka: 25
koristeći (MailMessage mm = nova MailMessage ("Naziv ", "[e-mail zaštićen]")) (mm.Subject =" Predmet pošte "; mm.Body =" Tijelo pošte "; mm.IsBodyHtml = false; korištenjem (SmtpClient sc = novi SmtpClient (" smtp.yandex.ru ", 25)) (sc. EnableSsl = true; sc.DeliveryMethod = SmtpDeliveryMethod.Network; sc.UseDefaultCredentials = false; sc.Credentials = novi NetworkCredential (" [e-mail zaštićen]"," YandexPassword "); sc.Pošalji (mm;))

SMTP poslužitelj: smtp.mail.ru
Luka: 25
koristeći (MailMessage mm = nova MailMessage ("Naziv ", "[e-mail zaštićen]")) (mm.Subject =" Predmet pošte "; mm.Body =" Tijelo pošte "; mm.IsBodyHtml = false; koristeći (SmtpClient sc = novi SmtpClient (" smtp.mail.ru ", 25)) (sc. EnableSsl = true; sc.DeliveryMethod = SmtpDeliveryMethod.Network; sc.UseDefaultCredentials = false; sc.Credentials = novi NetworkCredential (" [e-mail zaštićen]"," MailRuPassword "); sc.Pošalji (mm;))
Ako imate poštanski sandučić na usluzi mail.ru završava s inbox.ru, list.ru ili bk.ru, tada se adresa SMTP poslužitelja mijenja u skladu s tim (smtp.inbox.ru, smtp.list.ru i smtp.bk.ru).

Kao što vidite, da biste koristili bilo koju drugu uslugu e-pošte u svojim programima, trebate samo saznati adresu i port SMTP poslužitelja, kao i pravila autorizacije.

Također treba imati na umu da gotovo sve treće strane poštanske usluge nametnuti ograničenja na broj e-poruka poslanih tijekom određenog vremenskog razdoblja.

Oznake: e-pošta, slanje e-pošte, smtp

Jedna od najtraženijih funkcija na web mjestu je aplikacija ili obrazac za narudžbu, čiji se podaci šalju poštom vlasniku web stranice. U pravilu su takvi obrasci jednostavni i sastoje se od dva ili tri polja za unos podataka. Kako kreirate takav obrazac za narudžbu? To će zahtijevati korištenje jezika HTML označavanje i programski jezik PHP.

Sam HTML jezik za označavanje je jednostavan, samo trebate shvatiti kako i gdje staviti određene oznake. S programskim jezikom PHP stvari su malo složenije.

Programeru neće biti teško izraditi takav obrazac, ali HTML koderu neke radnje mogu izgledati teške.

Napravite obrazac za slanje podataka u html-u

Prvi red će biti sljedeći

Ovo je vrlo važan element forme. U njemu navodimo na koji način će se podaci prenijeti i u koju datoteku. U ovom slučaju, sve se šalje metodom POST u datoteku send.php. Program u ovoj datoteci mora prihvatiti podatke, oni će biti sadržani u nizu objava i poslati ih na navedenu adresu e -pošte.

Vratimo se na formu. Drugi red će sadržavati polje za unos vašeg punog imena. Ima sljedeći kod:

Vrsta obrasca je tekst, odnosno korisnik ovdje može unijeti ili kopirati tekst s tipkovnice. Parametar name sadrži naziv obrasca. U ovom slučaju, ovo je fio, pod tim imenom će se prenijeti sve što je korisnik unio u ovo polje. Parametar rezerviranog mjesta specificira što će biti napisano u ovom polju kao objašnjenje.

Sljedeći redak:

Ovdje je gotovo sve isto, ali naziv polja je email, a u objašnjenju je naznačeno da korisnik u ovaj obrazac treba unijeti svoju email adresu.

Sljedeći redak bit će gumb "pošalji":

A posljednji redak u obrascu bit će oznaka

Sad da sve to spojimo.





Sada ćemo polja u obrascu učiniti obaveznim. Imamo sljedeći kod:





Izradite datoteku koja prihvaća podatke iz HTML obrasca

Ovo će biti datoteka pod nazivom send.php

U datoteci, u prvoj fazi, trebate prihvatiti podatke iz polja posta. Da bismo to učinili, kreiramo dvije varijable:

$ fio = $ _POST ["fio"];
$ email = $ _POST ["e-pošta"];

Prije naziva varijabli u php -u stavlja se znak $, na kraju svakog retka stavlja se točka -zarez. $ _POST je niz u koji se prosljeđuju podaci iz obrasca. U html obrascu, submit metoda je navedena kao method = "post". Dakle, dvije varijable su preuzete iz html forme... Kako biste zaštitili svoje web mjesto, morate ove varijable proći kroz nekoliko filtara - php funkcija.

Prva funkcija pretvara sve znakove koje korisnik pokuša dodati u obrazac:

U ovom slučaju se nove varijable u php-u ne kreiraju, već se koriste postojeće. Filtar će pretvoriti znak "<" в "<". Также он поступить с другими символами, встречающимися в html коде.

Druga funkcija će dekodirati url ako ga korisnik pokuša dodati u obrazac.

$ fio = urldecode ($ fio);
$ email = urldecode ($ email);

U trećoj funkciji ćemo ukloniti razmake s početka i kraja niza, ako ih ima:

$ fio = trim ($ fio);
$ email = trim ($ email);

Postoje i druge funkcije za filtriranje php varijabli. Njihova upotreba ovisi o tome koliko se bojite da će napadač pokušati dodati kod ovom obliku slanja podataka na html poštu.

Provjera valjanosti podataka proslijeđenih iz HTML obrasca u PHP datoteku

Kako biste provjerili radi li ovaj kôd, prenose li se podaci, jednostavno ga možete prikazati na zaslonu pomoću funkcije echo:

echo $ fio;
jeka "
";
echo $ email;

Drugi redak je ovdje da podijeli izlaz php varijabli u različite retke.

Slanje primljenih podataka iz HTML obrasca na poštu pomoću PHP-a

Za slanje podataka na poštu, trebate koristiti funkciju pošte u PHP-u.

mail ("na koju adresu poslati", "predmet pisma", "Poruka (tijelo poruke)", "Od: s koje e-pošte je pismo poslano \ r \ n");

Na primjer, trebate poslati podatke na e-mail vlasnika ili upravitelja stranice [e-mail zaštićen]

Predmet e-pošte trebao bi biti jasan, a poruka e-pošte trebala bi sadržavati ono što je korisnik naveo u HTML obrascu.

pošta (" [e-mail zaštićen]"," Aplikacija sa stranice "," Puno ime: ". $ Fio.". E-pošta: ". $ E-pošta," Od: [e-mail zaštićen]\ r \ n ");

Morate dodati uvjet koji će provjeriti je li obrazac poslan pomoću PHP-a na navedenu adresu e-pošte.

ako (pošta (" [e-mail zaštićen]"," Naručite sa web mjesta "," Puni naziv: ". $ Fio.". E-pošta: ". $ Email," Od: [e-mail zaštićen]\ r \ n "))
{
echo "poruka uspješno poslana";
) drugo (
}

Dakle, programski kod datoteke send.php koja će slati podatke HTML obrasca na poštu izgledat će ovako:

$ fio = $ _POST ["fio"];
$ email = $ _POST ["e-pošta"];
$ fio = htmlspecialchars ($ fio);
$ email = htmlspecialchars ($ email);
$ fio = urldecode ($ fio);
$ email = urldecode ($ email);
$ fio = trim ($ fio);
$ email = trim ($ email);
// odjek $ fio;
// jeka "
";
// echo $ email;
ako (pošta (" [e-mail zaštićen]"," Aplikacija sa stranice "," Puno ime: ". $ Fio.". E-pošta: ". $ E-pošta," Od: [e-mail zaštićen]\ r \ n "))
(echo "poruka je uspješno poslana";
) drugo (
echo "došlo je do pogrešaka tijekom slanja poruke";
}?>

Tri retka za provjeru jesu li podaci proslijeđeni datoteci komentirani. Ako je potrebno, možete ih ukloniti jer su bili potrebni samo za ispravljanje pogrešaka.

Postavljanje HTML i PHP koda za slanje obrasca u jednu datoteku

U komentarima na ovaj članak mnogi ljudi postavljaju pitanje kako napraviti i HTML obrazac i PHP kod za slanje podataka na poštu u jednoj datoteci, a ne u dvije.

Da biste implementirali takav rad, trebate staviti HTML kod obrasca u datoteku send.php i dodati uvjet koji će provjeravati prisutnost varijabli u POST nizu (ovaj se niz prosljeđuje iz obrasca). Odnosno, ako varijable u nizu ne postoje, tada morate pokazati obrazac korisniku. U suprotnom, trebate prihvatiti podatke iz niza i poslati ih primatelju.

Pogledajmo kako promijeniti PHP kod u datoteci send.php:



Prijavni obrazac sa stranice


// provjeriti postoje li varijable u POST polju
if (! isset ($ _ POST ["fio"]) i! isset ($ _ POST ["email"]))) (
?>





) drugo (
// pokazati obrazac
$ fio = $ _POST ["fio"];
$ email = $ _POST ["e-pošta"];
$ fio = htmlspecialchars ($ fio);
$ email = htmlspecialchars ($ email);
$ fio = urldecode ($ fio);
$ email = urldecode ($ email);
$ fio = trim ($ fio);
$ email = trim ($ email);
ako (pošta (" [e-mail zaštićen]"," Aplikacija sa stranice "," Puno ime: ". $ Fio.". E-pošta: ". $ E-pošta," Od: [e-mail zaštićen]\ r \ n ")) (
echo "Poruka je uspješno poslana";
) drugo (
echo "Došlo je do pogrešaka prilikom slanja poruke";
}
}
?>

Provjeravamo postojanje varijable u POST polju pomoću funkcije PHP isset (). Uskličnik ispred ove funkcije u uvjetu znači negaciju. To jest, ako varijabla ne postoji, tada moramo pokazati svoj oblik. Da nisam stavio uskličnik, onda bi uvjet doslovno značio - "ako postoji, onda pokaži oblik." A to je u našem slučaju pogrešno. Naravno, možete ga preimenovati u index.php. Ako preimenujete datoteku, ne zaboravite preimenovati naziv datoteke i u retku

... Obrazac bi trebao povezivati ​​na istu stranicu, na primjer index.php. Kodu sam dodao naslov stranice.

Uobičajene pogreške koje se javljaju prilikom slanja PHP obrasca s web-mjesta

Prva, vjerojatno najčešća pogreška, je kada vidite praznu bijelu stranicu bez poruka. To znači da ste pogriješili u kodu stranice. Morate omogućiti prikaz svih pogrešaka u PHP -u ​​i tada ćete vidjeti gdje je greška napravljena. Dodajte svom kodu:

ini_set ("display_errors", "On");
error_reporting ("E_ALL");

Datoteku send.php treba izvoditi samo na poslužitelju, inače kod jednostavno neće raditi. Poželjno je da ovo nije lokalni poslužitelj, jer nije uvijek konfiguriran za slanje podataka na vanjski poslužitelj pošte. Ako pokrenete kôd na strani koja nije poslužitelj, PHP kod će se prikazati izravno na stranici.

Stoga, za ispravan rad, preporučam postavljanje datoteke send.php na hosting stranicu. Tamo je u pravilu sve već postavljeno.

Druga česta greška je kada se pojavi obavijest "Poruka je uspješno poslana", a pismo ne stigne poštom. U tom slučaju morate pažljivo provjeriti liniju:

ako (pošta (" [e-mail zaštićen]"," Naručite sa web mjesta "," Puni naziv: ". $ Fio.". E-pošta: ". $ Email," Od: [e-mail zaštićen]\ r \ n "))

Umjesto [e-mail zaštićen] mora postojati adresa e-pošte na koju želite poslati pismo, a umjesto[e-mail zaštićen] mora postojati e -adresa ove web stranice. Na primjer, za web mjesto, stranica će biti ... Samo u tom slučaju bit će poslan dopis s podacima iz obrasca.

Zadnje ažuriranje: 31.10.2015

Za slanje pošte na Internetu koristi se Simple Mail Transfer Protocol (SMTP). Ovaj protokol određuje kako poslužitelji e-pošte komuniciraju prilikom prijenosa e-pošte.

Klasa SmtpClient iz imenskog prostora System.Net.Mail dizajnirana je za rad sa SMTP protokolom i slanje e-pošte u .NET-u.

Ova klasa definira brojna svojstva koja vam omogućuju da prilagodite podnošenje:

    Host: smtp-poslužitelj s kojeg se šalje pošta. Na primjer, smtp.yandex.ru

    Port: port koji koristi smp poslužitelj. Ako nije navedeno, port 25 se koristi prema zadanim postavkama.

    Vjerodajnice: vjerodajnice pošiljatelja

    EnableSsl: Označava hoće li se SSL koristiti prilikom slanja

Druga ključna klasa koja se koristi prilikom slanja je MailMessage. Ova klasa predstavlja poruku koja se šalje. Među njegovim svojstvima su sljedeća:

    Prilozi: sadrži sve priloge uz pismo

    Tijelo: izravno tekst pisma

    Od: adresa pošiljatelja. Predstavlja objekt MailAddress

    Za: adresa primatelja. Također predstavlja objekt MailAddress

    Predmet: definira temu e -pošte

    IsBodyHtml: Označava predstavlja li e-poruka sadržaj s html kodom

Koristimo ove klase i pošaljimo pismo:

Korištenje sustava; koristeći System.Net; korištenjem System.IO; korištenje System.Threading.Tasks; korištenjem System.Net.Mail; imenski prostor NetConsoleApp (klasa Program (statički void Main (string args)) (// pošiljatelj - postavite adresu i ime prikazano u slovu MailAddress from = new MailAddress (" [e-mail zaštićen]"," Tom "); // kome šaljemo MailAddress = nova MailAddress (" [e-mail zaštićen]"); // stvoriti objekt poruke MailMessage m = novi MailMessage (od, do); // naslov poruke m.Subject =" Test "; // tekst poruke m.Body ="

Testno pismo za smtp klijenta

"; // slovo predstavlja html kod m.IsBodyHtml = true; // adresu smtp poslužitelja i port s kojeg ćemo poslati slovo SmtpClient smtp = new SmtpClient (" smtp.gmail.com", 587) ; // prijava i lozinka smtp.Credentials = new NetworkCredential (" [e-mail zaštićen]"," moja lozinka "); smtp.EnableSsl = true; smtp.Send (m); Console.Read ();)))

Za slanje se koristi metoda Send () kojoj se prosljeđuje objekt MailMessage.

Također možemo koristiti asinkronu verziju slanja pomoću metode SendMailAsync:

Korištenje sustava; pomoću System.Net; korištenje System.IO; pomoću System.Threading.Tasks; korištenjem System.Net.Mail; imenski prostor NetConsoleApp (klasa Program (statički void Main (string args) (SendEmailAsync (). GetAwaiter (); Console.Read ();) privatni statički async zadatak SendEmailAsync () (MailAddress from = new MailAddress (" [e-mail zaštićen]"," Tom "); MailAddress to = nova MailAddress (" [e-mail zaštićen]"); MailMessage m = nova poruka pošte (od, do); m.Subject =" Test "; m.Body =" Testno slovo 2 operacije smtp klijenta "; SmtpClient smtp = novi SmtpClient (" smtp.gmail.com " , 587); smtp.Credentials = novi NetworkCredential (" [e-mail zaštićen]"," mypassword "); smtp.EnableSsl = true; čekajte smtp.SendMailAsync (m); Console.WriteLine (" Mail poslano ");)))

Dodavanje privitaka

Pismu možemo priložiti priloge pomoću svojstva Privitci. Svaki privitak predstavlja objekt System.Net.Mail.Attachment:

Adresa pošte od = nova adresa pošte (" [e-mail zaštićen]"," Tom "); MailAddress to = nova MailAddress (" [e-mail zaštićen]"); MailMessage m = nova MailMessage (od, do); m.Prilozi.Dodaj (novi prilog (" D: //temlog.txt "));

Slanje poruka na poštu u Visual Studio 2013 C ++


Čini se, zašto ponovno izumiti kotač? Postoji mnogo programa koji mogu slati e-poštu na e-poštu, besplatno i plaćeno. U ovim programima možete slati pisma ne jednom, već mnogim primateljima odjednom. No, unatoč tome, dodavanje primatelja obavlja se ručno, dosadan je zadatak voziti po njihovim adresama, pogotovo ako ih ima više od desetak. Što ako trebate redovito slati stotine e-poruka? I ne govorim o spamu, nego mislim na potpuno legalne mailinge?

U tom slučaju može pomoći poseban program. U ovom članku neće biti tako cijeli program, već mali program koji jednostavno šalje jedno pismo na jednu adresu. U ovom slučaju dolazi do autorizacije putem smpt-a, odnosno pismo se ne šalje niotkuda, već iz potpuno pravog poštanskog sandučića. Primjer koristi mail.ru mail.

Dakle, evo teksta programa.

#include "stdafx.h" #using korištenje imenskog prostora System; korištenje prostora imena System :: Net; pomoću prostora imena System :: Net :: Mail; korištenje prostora imena System :: Net :: Mime; korištenje prostora imena System :: Threading; korištenje prostora imena System :: ComponentModel; int main () (SmtpClient ^ Smtp = gcnew SmtpClient ("smtp.mail.ru", 25); Smtp-> Credentials = gcnew NetworkCredential ("[email protected]", "your_password"); Smtp-> true EnableSsl ; MailMessage ^ Poruka = ​​gcnew MailMessage (); Poruka-> Od = gcnew MailAddress ("vaš[email protected]"); Poruka-> Prima-> Dodaj (gcnew MailAddress ("[email protected]")); Poruka- > Predmet = "Naslov"; Poruka-> Tijelo = "Poruka"; Smtp-> Pošalji (poruka);) Odmah je vrijedno spomenuti koji uvjeti moraju biti ispunjeni: projekt u Visual Studio 2013 stvoren je ne samo za C + +, još uvijek mora biti konzola, podržavati CLR okruženje. Pogledajmo pobliže što se događa i u kojem retku u ovom C ++ programu koji šalje poruku u odabrani e-mail pretinac.

Od 1. do 8. retka povezuju se datoteke zaglavlja i imenski prostori. Redak 13 inicijalizira smpt poslužitelj. Yandex i Google koriste svoje: smtp.yandex.ru i smtp.google.ru, respektivno. Broj 25 na ovoj liniji je luka. U slučaju da vaš davatelj usluga blokira ovaj port ili nije moguće spojiti se, tada možete isprobati ove opcije 465 ili 587. U redak 14 morate unijeti svoj e-mail pretinac (iz kojeg će pismo biti poslano) i lozinku za ovaj okvir.

Obratite posebnu pozornost na red 15 - ovaj povezuje sigurni ssl protokol. Ovo je obavezno za Yandex i Mail. Redak 17 stvara poruku; u 18 - povratna adresa; u 19 - adresa primatelja; 20 - zaglavlje slova; 21 - poruka; u 22. redu vrši se slanje. Ako se nakon pokretanja programa ne pojave pogreške, ništa se ne dogodi, onda je sve u redu - provjerite poštanski pretinac primatelja.

Ako imate barem malo programskih vještina, onda će završiti ostatak biti lak. Potrebno je stvoriti prozor, obrazac u obliku nekoliko polja za unos, natjerati program da učita popis adresa iz, na primjer, tekstualne datoteke ili baze podataka MS Access. Ako vam to još uvijek nije sasvim jasno, onda ću vam u sljedećim člancima reći nešto više o svemu.

Sva pitanja o programima u C++, java, skriptama u java skripti i php-u, izradi i izgledu web stranice, možete postaviti poštom [e-mail zaštićen] ili pokucajte na skype up777up2. Za vrlo razumnu naknadu, rado ću vam pomoći.

Dodatak

Jedan od posjetitelja bloga postavio je pitanje: kako priložiti datoteku u ovom programu? Odgovor je jednostavan: svojoj aplikaciji morate dodati nekoliko redaka koda:

String ^ att = L "att.xls"; Prilog ^ dan = gcnew Prilog (att, MediaTypeNames :: Aplikacija :: Oktet); Poruka-> Prilozi-> Dodaj (dan); U prvom retku definiramo priloženu datoteku, u drugom definiramo podatke i naređujemo da ih ne interpretiraju (Content-Type zaglavlje MIME protokola) a u trećem ga dodajemo poruci. To je sve.

Zapovjednik broda 14. listopada 2013. u 19:29 sati

Programsko slanje e-pošte korištenjem raznih usluga

Vrlo često morate se baviti slanjem e -pošte iz programskog koda. Za primjerima ne morate ići daleko.

Ovaj članak je nagovještaj i ne otkriva ništa novo, ali prije nego što sam ga napisao, pogledao sam nešto slično na internetu i prilično se iznenadio što gotovo svugdje nude ili nefunkcionalno ili zastarjelo rješenje, ili je jednostavno nepismeno napisano.

Prva stvar koju ne biste trebali učiniti u ovim primjerima je korištenje System.Web.Mail, koji je odavno zastario, a od Visual Studija 2010., System.Web biblioteka nije ni dodana bez poznavanja punog puta do odgovarajućeg DLL.
Umjesto toga, predlaže se korištenje knjižnice System.Net.
koristeći System.Net; korištenjem System.Net.Mail;
Dakle, najjednostavnija stvar, najvažnija i često korištena, jest slanje pisma s vašeg poslužitelja pošte na kojem je konfiguriran SMTP klijent. Kao što razumijete, poslužitelj može biti ili onaj na kojem se pokreće aplikacija ili udaljeni, na kojem imate pravo slati pisma bez dodatne autorizacije.

Primjer koda za slanje pisma s lokalnog stroja:
", "[e-mail zaštićen]")) (mm.Subject =" Predmet pošte "; mm.Body =" Tijelo pošte "; mm.IsBodyHtml = false; koristeći (SmtpClient sc = novi SmtpClient (" 127.0.0.1 ")) (// Adresa bi trebala biti ovdje poslužitelj pošte i port ako je potrebno sc.Pošalji (mm;))

Korištenje usluga e -pošte kao što su Gmail, Yandex, Mail.ru itd. sve je isto, samo se dodaju parametri s autorizacijom.

SMTP poslužitelj: smtp.gmail.com
Luka: 587
koristeći (MailMessage mm = nova MailMessage ("Naziv ", "[e-mail zaštićen]")) (mm.Subject =" Predmet pošte "; mm.Body =" Tijelo pošte "; mm.IsBodyHtml = false; koristeći (SmtpClient sc = novi SmtpClient (" smtp.gmail.com ", 587)) (sc. EnableSsl = true; sc.DeliveryMethod = SmtpDeliveryMethod.Network; sc.UseDefaultCredentials = false; sc.Credentials = novi NetworkCredential (" [e-mail zaštićen]"," GmailPassword "); sc.Send (mm);))

SMTP poslužitelj: smtp.yandex.ru
Luka: 25
koristeći (MailMessage mm = nova MailMessage ("Naziv ", "[e-mail zaštićen]")) (mm.Subject =" Predmet pošte "; mm.Body =" Tijelo pošte "; mm.IsBodyHtml = false; korištenjem (SmtpClient sc = novi SmtpClient (" smtp.yandex.ru ", 25)) (sc. EnableSsl = true; sc.DeliveryMethod = SmtpDeliveryMethod.Network; sc.UseDefaultCredentials = false; sc.Credentials = novi NetworkCredential (" [e-mail zaštićen]"," YandexPassword "); sc.Pošalji (mm;))

SMTP poslužitelj: smtp.mail.ru
Luka: 25
koristeći (MailMessage mm = nova MailMessage ("Naziv ", "[e-mail zaštićen]")) (mm.Subject =" Predmet pošte "; mm.Body =" Tijelo pošte "; mm.IsBodyHtml = false; koristeći (SmtpClient sc = novi SmtpClient (" smtp.mail.ru ", 25)) (sc. EnableSsl = true; sc.DeliveryMethod = SmtpDeliveryMethod.Network; sc.UseDefaultCredentials = false; sc.Credentials = novi NetworkCredential (" [e-mail zaštićen]"," MailRuPassword "); sc.Pošalji (mm;))
Ako vaš poštanski sandučić na usluzi mail.ru završava s inbox.ru, list.ru ili bk.ru, adresa SMTP poslužitelja se u skladu s tim mijenja (smtp.inbox.ru, smtp.list.ru i smtp.bk.ru ).

Kao što vidite, da biste koristili bilo koju drugu uslugu e-pošte u svojim programima, trebate samo saznati adresu i port SMTP poslužitelja, kao i pravila autorizacije.

Također treba imati na umu da gotovo sve usluge e-pošte trećih strana nameću ograničenja na broj e-poruka poslanih tijekom određenog vremenskog razdoblja.

Oznake: e-pošta, slanje e-pošte, smtp