1. Tuotteet
  2.   Sähköposti
  3.   C++
  4.   SimpleMail
 
  

Lähetä/Vastaanota sähköposteja HTML-sisällöllä ilmaisella C++-kirjastolla

Avoimen lähdekoodin C++-sähköpostikirjasto sähköpostien lähettämiseen ja vastaanottamiseen, tukien modernia todennusta, MIME-muotoilua, liitteitä, SMTP:ta, HTML-sisältöä ja SSL/TLS-salausta.

Mikä on SimpleMail?

Nykyisen C++-kehityksen maailmassa sähköpostitoiminnallisuuden käsittely tehokkaasti ja turvallisesti on ratkaisevan tärkeää monenlaisissa sovelluksissa – ilmoitusjärjestelmistä käyttäjien vahvistuksiin. Vaikka monet korkean tason kielet tarjoavat monipuolisia kirjastoja SMTP-sähköpostien käsittelyyn, C++:lla on historiallisesti puuttunut todella kevyt ja yksinkertainen ratkaisu. SimpleMail on QtCore- ja QtNetwork-moduulien päälle rakennettu C++-kirjasto. Se tarjoaa yksinkertaisen rajapinnan MIME-yhteensopivien sähköpostiviestien lähettämiseen SMTP-palvelimien kautta, sisältäen tuen SSL/TLS-salaukselle, SMTP-todennukselle, pelkälle tekstille ja HTML-viestisisällölle, tiedostoliitteille, useille vastaanottajille (To, Cc, Bcc) ym. Laitteet, jotka valvovat olosuhteita (esim. lämpötila‑anturit tai älykodin yhdyskäytävät), voivat käyttää SimpleMailia hälyttääkseen käyttäjiä poikkeamista.

SimpleMail on minimalistinen mutta voimakas kirjasto, jonka avulla C++-sovellukset voivat lähettää sähköposteja liitteillä, HTML-sisällöllä ja muulla SMTP:n kautta. GitHubissa ylläpidetty SimpleMail on Qt-pohjainen SMTP-asiakaskirjasto, suunniteltu helppokäyttöiseksi, joustavaksi ja vankaksi. Olipa kyseessä työpöytäsovellus tai palvelinpuolen daemon C++:ssa, kirjasto tarjoaa selkeän ja käytännöllisen rajapinnan sähköpostien lähettämiseen. Jos käytät esimerkiksi Cutelyst- tai Wt‑kehyksiä, SimpleMail sopii luonnollisesti käyttäjä‑ilmoitusten tai transaktiosähköpostien lähettämiseen. SimpleMail on raikas tuulahdus C++‑kehittäjille, jotka haluavat integroida sähköpostitoiminnot suoraan sovelluksiinsa. Pienen jalanjäljen, vahvan tuen nykyaikaisille sähköpostiprotokollille ja saumattoman Qt‑integraation ansiosta se tarjoaa juuri sen, mitä monet C++‑kehittäjät ovat odottaneet.

Previous Next

Aloittaminen SimpleMailin kanssa

Suositeltu tapa asentaa SimpleMail on käyttää GitHubia. Käytä seuraavaa komentoa sujuvaa asennusta varten.

Asenna SimpleMail GitHubin kautta

git clone https://github.com/cutelyst/simple-mail.git

Luo HTML-sähköposti C++-rajapinnan avulla

Avoimen lähdekoodin SimpleMail-kirjasto tukee sähköpostien lähettämistä sekä pelkän tekstin että HTML-sisällön kanssa, mahdollistaen rikkaamman sähköpostimuotoilun. Voit määrittää HTML‑runko visuaalisesti houkuttelevalle sähköpostille samalla tarjoten pelkän tekstin vaihtoehdon sähköpostiasiakkaille, jotka eivät tue HTML:ää tai käyttäjille, jotka sitä suosivat. Kirjasto tekee muotoiltujen sähköpostien, kuvien tai mukautettujen tyylien lähettämisestä helppoa, koska se sallii HTML‑sisällön viestissäsi. Seuraava koodinpätkä näyttää, miten ohjelmistokehittäjät voivat lähettää HTML‑sähköpostin upotetuilla kuvilla.

Kuinka lähettää HTML-sähköposti upotetuilla kuvilla C++-rajapinnan avulla?

#include 

int main() {
    SimpleMail::Mailer mailer("smtp.gmail.com", 587);
    mailer.setUsername("your-email@gmail.com");
    mailer.setPassword("your-password");

    SimpleMail::Mail mail;
    mail.setSender("your-email@gmail.com");
    mail.addTo("recipient@example.com");
    mail.setSubject("HTML Email with Image");

    // HTML content with an embedded image
    mail.setBody(
        "

Welcome!

" "

This is an HTML email with an inline image:

" "Company Logo", SimpleMail::Mail::BodyType::Html ); // Attach an image and reference it in HTML using CID mail.addAttachment("logo.png", "logo", "image/png"); if (mailer.sendMail(mail)) { std::cout << "HTML email sent successfully!" << std::endl; } else { std::cerr << "Error: " << mailer.lastError() << std::endl; } return 0; }

SMTP-tuki todennuksella

Avoimen lähdekoodin SimpleMail-kirjasto on tarjonnut täydellisen tuen SMTP-todennukselle C++-sovelluksissa. Kirjasto tukee sekä pelkkää että kirjautumistodennusmenetelmää. Tämä varmistaa yhteensopivuuden suurimpien SMTP-palvelimien, kuten Gmailin, Outlookin ja omien palvelimien, kanssa. Tässä on hyödyllinen koodinpätkä, joka näyttää kuinka helposti C++-kehittäjät voivat konfiguroida SMTP-asetukset, mukaan lukien STARTTLS portissa 587.

Kuinka konfiguroida SMTP-asetukset C++-sovelluksissa?

SimpleMail::Sender sender;
sender.setHost("smtp.example.com");
sender.setPort(587);
sender.setConnectionType(SimpleMail::Sender::TlsConnection);
sender.setUser("your-email@example.com");
sender.setPassword("your-password");

Lähetä sähköposteja liitteillä C++:lla

Liitteiden lisääminen sähköposteihin on yleinen vaatimus, ja SimpleMail hoitaa sen saumattomasti. Kirjasto tekee uusien sähköpostien luomisesta ja tiedostojen liittämisestä näihin viesteihin helppoa vain muutamalla rivillä. Se huolehtii liitteen koodaamisesta ja oikeiden MIME-tyyppien asettamisesta. Kehittäjät voivat määrittää tiedostopolun ja halutessaan mukautetun tiedostonimen liitteelle. Seuraava esimerkki näyttää, miten ohjelmistokehittäjät voivat lähettää sähköpostin tiedostoliitteillä C++-rajapinnan avulla.

Kuinka lähettää sähköpostiviesti tiedostoliitteillä C++-kirjaston avulla?

#include 

int main() {
    SimpleMail::Mailer mailer("smtp.example.com", 465);
    mailer.setUsername("user@example.com");
    mailer.setPassword("password");
    mailer.setSsl(true); // Enable SSL for secure connection

    SimpleMail::Mail mail;
    mail.setSender("user@example.com");
    mail.addTo("client@example.com");
    mail.setSubject("Invoice Attached");
    mail.setBody("Please find the attached invoice.");

    // Attach a PDF file
    mail.addAttachment("/path/to/invoice.pdf", "invoice.pdf", "application/pdf");

    if (mailer.sendMail(mail)) {
        std::cout << "Email with attachment sent!" << std::endl;
    } else {
        std::cerr << "Error: " << mailer.lastError() << std::endl;
    }

    return 0;
}

Parempi turvallisuus SSL/TLS-tuen avulla

Turvallisuus on ensisijainen, kun käsitellään sähköpostia. SimpleMail-kirjasto tukee suojattuja yhteyksiä SMTP-palvelimiin käyttäen SSL (Secure Sockets Layer) ja TLS (Transport Layer Security) -protokollia. Kun konfiguoit SmtpServer‑asetuksia, voit määrittää ConnectionType‑arvoksi Ssl tai Tls varmistaaksesi, että yhteys mail‑palvelimeen on salattu. Tämä suojaa sähköpostin sisällön ja todennustiedot mahdolliselta sieppaukselta.

 Suomen