1. Produkter
  2.   E-mail
  3.   C++
  4.   SimpleMail
 
  

Send/Receive Emails with HTML Content via Free C++ Library

Open Source C++ Email Library for Emails Sending & Receiving with Support for Modern Authentication, MIME Formatting, Attachments, SMTP, HTML Content, and SSL/TLS Encryption.

Hvad er SimpleMail?

I den moderne C++-udviklingsverden er håndtering af e-mailfunktionalitet effektivt og sikkert afgørende for en bred vifte af applikationer – fra notifikationssystemer til brugerverifikationer. Mens mange højniveau-sprog tilbyder rige biblioteker til SMTP-e-mailhåndtering, har C++ historisk manglet en virkelig letvægts- og simpel løsning. SimpleMail er et C++-bibliotek bygget oven på QtCore- og QtNetwork-modulerne. Det giver et enkelt interface til at sende MIME‑kompatible e‑mailbeskeder via SMTP‑servere, inklusive understøttelse af SSL/TLS‑kryptering, SMTP‑godkendelse, ren tekst‑ og HTML‑indhold, filvedhæftninger, flere modtagere (To, Cc, Bcc) osv. Enheder, der overvåger forhold (f.eks. temperatursensorer eller smart‑home‑gateways), kan bruge SimpleMail til at advare brugere i tilfælde af afvigelser.

SimpleMail er et minimalistisk men kraftfuldt bibliotek, der lader C++‑applikationer sende e‑mails med vedhæftninger, HTML‑indhold og mere via SMTP. Vedligeholdt på GitHub er SimpleMail et Qt‑baseret SMTP‑klientbibliotek designet for brugervenlighed, fleksibilitet og robusthed. Uanset om du bygger en desktop‑app eller en server‑side daemon i C++, giver biblioteket et rent og praktisk interface til at sende e‑mails. Hvis du bruger rammer som Cutelyst eller Wt, er SimpleMail et naturligt valg til at sende bruger‑relaterede notifikationer eller transaktions‑e‑mails. SimpleMail er en forfriskende brise for C++‑udviklere, der ønsker at integrere e‑mailfunktioner direkte i deres applikationer. Med et lille fodaftryk, stærk understøttelse af moderne e‑mailprotokoller og problemfri integration med Qt‑frameworket, leverer det præcis det, mange C++‑udviklere har ventet på.

Previous Next

Kom i gang med SimpleMail

Den anbefalede måde at installere SimpleMail på er via GitHub. Brug venligst følgende kommando for en problemfri installation.

install SimpleMail via GitHub

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

Opret HTML-e-mail via C++ API

Det open source SimpleMail-bibliotek understøtter afsendelse af e‑mails med både ren tekst og HTML‑indhold, hvilket muliggør rigere e‑mailformatering. Du kan angive et HTML‑krop for visuelt tiltalende e‑mails, samtidig med at du leverer et ren‑tekst‑alternativ til e‑mailklienter, der ikke understøtter HTML, eller til brugere, der foretrækker det. Biblioteket gør det nemt at sende formaterede e‑mails med billeder eller brugerdefinerede stilarter, fordi det tillader HTML‑indhold i din besked. Følgende kodeudsnit viser, hvordan softwareudviklere kan sende en HTML‑e‑mail med indlejrede billeder.

Hvordan sender man en HTML-e-mail med indlejrede billeder via C++ API?

#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-understøttelse med godkendelse

Det open source SimpleMail-bibliotek har leveret fuld understøttelse af SMTP‑godkendelse i C++‑applikationer. Biblioteket understøtter både plain‑ og login‑godkendelsesmetoder. Dette sikrer kompatibilitet med de fleste SMTP‑servere, inklusive Gmail, Outlook og brugerdefinerede servere. Her er et nyttigt kodeudsnit, der viser, hvor nemt C++‑udviklere kan konfigurere SMTP‑indstillinger, inklusive STARTTLS over port 587.

Hvordan konfigurerer man SMTP-indstillinger i C++-apps?

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");

Send e-mails med vedhæftninger via C++

Tilføjelse af vedhæftninger til dine e‑mails er et almindeligt krav, og SimpleMail håndterer dette problemfrit. Biblioteket gør det nemt at generere nye e‑mails og vedhæfte filer til disse beskeder med kun et par linjer. Det tager sig af kodning af vedhæftningen og indstilling af de korrekte MIME‑typer. Udviklere kan angive filstien og eventuelt et brugerdefineret filnavn for vedhæftningen. Følgende eksempel viser, hvordan softwareudviklere kan sende en e‑mail med filvedhæftninger via C++‑API.

Hvordan sender man en e-mailmeddelelse med filvedhæftninger via C++-biblioteket?

#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;
}

Bedre sikkerhed med SSL/TLS-understøttelse

Sikkerhed er altafgørende, når man håndterer e‑mail. SimpleMail-biblioteket understøtter sikre forbindelser til SMTP‑servere ved brug af SSL (Secure Sockets Layer) og TLS (Transport Layer Security). Når du konfigurerer SmtpServer, kan du angive ConnectionType som Ssl eller Tls for at sikre, at kommunikationen med mailserveren er krypteret. Dette beskytter e‑mailindholdet og godkendelsesoplysningerne mod at blive opsnappet.

 Dansk