An SMTP Client writen in C++ for Qt. Allows applications to send emails (MIME with text, html, attachments, inline files, etc.) via SMTP. Supports SSL and SMTP authentication.
Go to file
2014-11-07 22:38:42 +02:00
demos Set up demo projects. 2014-11-07 21:19:17 +02:00
src Code and API cleanup. 2014-11-06 20:38:30 +02:00
test Fixed waitFor* methods in SmtpClient. Updated test data. 2014-02-16 18:42:33 +02:00
.gitignore Ignore Qt Creator`s .pro.user files 2014-08-15 17:30:38 +04:00
.travis.yml Build on travis-ci.org 2014-11-07 22:38:42 +02:00
LICENSE License changed to LGPL version 2.1 2012-07-24 17:06:55 +03:00
README.md Update README.md 2014-02-16 19:46:44 +02:00

SMTP Client for Qt (C++) - Version 2.0 Beta

The SmtpClient for Qt is small library writen for Qt 4 (C++ version) that allows application to send complex emails (plain text, html, attachments, inline files, etc.) using the Simple Mail Transfer Protocol (SMTP).

##New in version 2.0:

  • Asynchronous & Synchronous working mode

  • Qt5 compatibility

  • Building as a shared library

  • code of SmtpClient refactored and partially rewrited

##New in version 1.1:

  • TLS (STARTTLS) connection is now supported

  • multiple types of recipients (to, cc, bcc)

  • nested mime emails (mixed/alternative, mixed/related)

  • output compilant with RFC2045

SMPT Client for Qt supports

  • TCP and SSL connections to SMTP servers

  • SMTP authentication (PLAIN and LOGIN methods)

  • sending MIME emails (to multiple recipients)

  • plain text and HTML (with inline files) content in emails

  • multiple attachments and inline files (used in HTML)

  • different character sets (ascii, utf-8, etc) and encoding methods (7bit, 8bit, base64)

  • error handling

Examples

Lets see a simple example:

#include <QtGui/QApplication>
#include "../src/SmtpMime"

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);

    // This is a first demo application of the SmtpClient for Qt project

    // First we need to create an SmtpClient object
    // We will use the Gmail's smtp server (smtp.gmail.com, port 465, ssl)

    SmtpClient smtp("smtp.gmail.com", 465, SmtpClient::SslConnection);

    // We need to set the username (your email address) and the password
    // for smtp authentification.

    smtp.setUser("your_email_address@gmail.com");
    smtp.setPassword("your_password");

    // Now we create a MimeMessage object. This will be the email.

    MimeMessage message;

    message.setSender(new EmailAddress("your_email_address@gmail.com", "Your Name"));
    message.addRecipient(new EmailAddress("recipient@host.com", "Recipient's Name"));
    message.setSubject("SmtpClient for Qt - Demo");

    // Now add some text to the email.
    // First we create a MimeText object.

    MimeText text;

    text.setText("Hi,\nThis is a simple email message.\n");

    // Now add it to the mail

    message.addPart(&text);

    // Now we can send the mail

    smtp.connectToHost();
    smtp.waitForReadyConnected();

    smtp.login();
    smtp.waitForAuthenticated();

    smtp.sendMail(message);
    smtp.waitForMailSent();

    smtp.quit();

}

For more examples see the Wiki/Examples.

License

This project (all files including the demos/examples) is licensed under the GNU LGPL, version 2.1.

Copyright (c) 2014 - Tőkés Attila