1. Produk
  2.   E-mel
  3.   C++
  4.   SimpleMail
 
  

Hantar/Terima E-mel dengan Kandungan HTML melalui Perpustakaan C++ Percuma

Perpustakaan E-mel C++ Sumber Terbuka untuk Penghantaran & Penerimaan E-mel dengan Sokongan Pengesahan Moden, Pemformatan MIME, Lampiran, SMTP, Kandungan HTML, dan Penyulitan SSL/TLS.

Apakah SimpleMail?

Dalam dunia pembangunan C++ moden, mengendalikan fungsi e-mel dengan cekap dan selamat adalah penting untuk pelbagai aplikasi—dari sistem pemberitahuan hingga pengesahan pengguna. Walaupun banyak bahasa peringkat tinggi menawarkan perpustakaan kaya untuk pengendalian e-mel SMTP, C++ secara tradisinya kekurangan penyelesaian yang benar‑benar ringan dan mudah. SimpleMail ialah perpustakaan C++ yang dibina di atas modul QtCore dan QtNetwork. Ia menyediakan antara muka mudah untuk menghantar mesej e-mel mematuhi MIME melalui pelayan SMTP, termasuk sokongan untuk penyulitan SSL/TLS, pengesahan SMTP, kandungan teks biasa dan HTML, lampiran fail, pelbagai penerima (To, Cc, Bcc) dan sebagainya. Peranti yang memantau keadaan (contoh, sensor suhu atau pintu masuk rumah pintar) boleh menggunakan SimpleMail untuk memberi amaran kepada pengguna sekiranya terdapat anomali.

SimpleMail ialah perpustakaan minimalis namun berkuasa yang membolehkan aplikasi C++ menghantar e-mel dengan lampiran, kandungan HTML, dan lain‑lain melalui SMTP. Diselenggara di GitHub, SimpleMail ialah perpustakaan klien SMTP berasaskan Qt yang direka untuk kemudahan penggunaan, fleksibiliti, dan ketahanan. Sama ada anda membina aplikasi desktop atau daemon sisi‑pelayan dalam C++, perpustakaan ini menyediakan antara muka yang bersih dan praktikal untuk menghantar e-mel. Jika anda menggunakan kerangka kerja seperti Cutelyst atau Wt, SimpleMail merupakan pilihan semula jadi untuk menghantar pemberitahuan berkaitan pengguna atau e-mel transaksional. SimpleMail adalah nafas segar bagi pemaju C++ yang ingin mengintegrasikan keupayaan e-mel secara langsung ke dalam aplikasi mereka. Dengan jejak kecil, sokongan kuat untuk protokol e-mel moden, dan integrasi lancar dengan kerangka kerja Qt, ia menawarkan apa yang telah lama dinantikan oleh pemaju C++.

Previous Next

Mula Menggunakan SimpleMail

Cara yang disarankan untuk memasang SimpleMail ialah melalui GitHub. Sila gunakan perintah berikut untuk pemasangan yang lancar.

pasang SimpleMail melalui GitHub

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

Cipta E-mel HTML melalui API C++

Perpustakaan SimpleMail sumber terbuka menyokong penghantaran e-mel dengan kandungan teks biasa dan HTML, membolehkan format e-mel yang lebih kaya. Anda boleh menentukan badan HTML untuk e-mel yang menarik secara visual sambil juga menyediakan alternatif teks biasa untuk klien e-mel yang tidak menyokong HTML atau untuk pengguna yang lebih suka teks. Perpustakaan ini memudahkan penghantaran e-mel berformat dengan imej atau gaya tersuai, kerana ia membenarkan kandungan HTML dalam mesej anda. Petikan kod berikut menunjukkan bagaimana pembangun perisian boleh menghantar E-mel HTML dengan Imej Selari.

Bagaimana untuk Hantar E-mel HTML dengan Imej Selari melalui API C++?

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

Sokongan SMTP dengan Pengesahan

Perpustakaan SimpleMail sumber terbuka telah menyediakan sokongan lengkap untuk pengesahan SMTP dalam aplikasi C++. Perpustakaan ini menyokong kaedah pengesahan plain dan login. Ini memastikan keserasian dengan kebanyakan pelayan SMTP, termasuk Gmail, Outlook, dan pelayan khusus. Berikut ialah petikan kod berguna yang menunjukkan betapa mudahnya pemaju C++ dapat mengkonfigurasi tetapan SMTP, termasuk STARTTLS pada port 587.

Bagaimana untuk Mengkonfigurasi Tetapan SMTP dalam Aplikasi C++?

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

Hantar E-mel dengan Lampiran melalui C++

Menambah lampiran kepada e-mel anda adalah keperluan biasa, dan SimpleMail mengendalinya dengan lancar. Perpustakaan ini memudahkan penciptaan e-mel baru dan melampirkan fail kepada mesej tersebut dengan hanya beberapa baris kod. Ia mengurus pengekodan lampiran dan menetapkan jenis MIME yang sesuai. Pembangun boleh menentukan laluan fail dan secara pilihan nama fail tersuai untuk lampiran. Contoh berikut menunjukkan bagaimana pembangun perisian boleh menghantar E-mel dengan Lampiran Fail melalui API C++.

Bagaimana untuk Hantar Mesej E-mel dengan Lampiran Fail melalui Perpustakaan C++?

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

Keselamatan Lebih Baik dengan Sokongan SSL/TLS

Keselamatan adalah keutamaan apabila berurusan dengan e-mel. Perpustakaan SimpleMail menyokong sambungan selamat ke pelayan SMTP menggunakan SSL (Secure Sockets Layer) dan TLS (Transport Layer Security). Apabila mengkonfigurasi SmtpServer, anda boleh menetapkan ConnectionType sebagai Ssl atau Tls untuk memastikan komunikasi dengan pelayan melayu disulitkan. Ini melindungi kandungan e-mel dan kelayakan pengesahan daripada disadap.

 Melayu