Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. is there anyway to Send Email to someone in Qt?
Forum Updated to NodeBB v4.3 + New Features

is there anyway to Send Email to someone in Qt?

Scheduled Pinned Locked Moved Unsolved General and Desktop
48 Posts 12 Posters 28.2k Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • O opengpu

    and at common situation , email is fast enough when recieved after send?

    mrjjM Offline
    mrjjM Offline
    mrjj
    Lifetime Qt Champion
    wrote on last edited by
    #23

    @opengpu
    Well in most cases, email comes very fast.
    But if your app is very, very, very far away, it might take a few minutes to get to
    destination.

    JonBJ 1 Reply Last reply
    0
    • mrjjM mrjj

      @opengpu
      Well in most cases, email comes very fast.
      But if your app is very, very, very far away, it might take a few minutes to get to
      destination.

      JonBJ Online
      JonBJ Online
      JonB
      wrote on last edited by
      #24

      @mrjj Are you talking about sending emails to Alpha Centauri? :)

      mrjjM 1 Reply Last reply
      3
      • JonBJ JonB

        @mrjj Are you talking about sending emails to Alpha Centauri? :)

        mrjjM Offline
        mrjjM Offline
        mrjj
        Lifetime Qt Champion
        wrote on last edited by
        #25

        @JonB said

        Alpha Centauri

        Haha. that might take some time... ;)
        Ok maybe i went too far with "very" :)

        1 Reply Last reply
        1
        • raven-worxR raven-worx

          @opengpu
          not directly, only with 3rd party libs:
          https://github.com/cutelyst/simple-mail
          https://github.com/bluetiger9/SmtpClient-for-Qt
          ...
          and a SMTP server of course.

          or via IMAP server
          http://trojita.flaska.net/

          O Offline
          O Offline
          opengpu
          wrote on last edited by
          #26

          @raven-worx
          after cmake and compile error in vs:
          simple-mail-master\build\src\simplemail-qt5_autogen\include_Debug\EWIEGA46WW/moc_sender.cpp(197): error C2491: 'SimpleMail::Sender::staticMetaObject': definition of dllimport static data member not allowed

          vs2017, x64,
          Qt\5.12.3\msvc2017_64\lib\cmake\Qt5\Qt5Config.cmake

          raven-worxR 1 Reply Last reply
          0
          • O opengpu

            @raven-worx
            after cmake and compile error in vs:
            simple-mail-master\build\src\simplemail-qt5_autogen\include_Debug\EWIEGA46WW/moc_sender.cpp(197): error C2491: 'SimpleMail::Sender::staticMetaObject': definition of dllimport static data member not allowed

            vs2017, x64,
            Qt\5.12.3\msvc2017_64\lib\cmake\Qt5\Qt5Config.cmake

            raven-worxR Offline
            raven-worxR Offline
            raven-worx
            Moderators
            wrote on last edited by
            #27

            @opengpu
            i haven't written nor used those 3rd party libs, i just pointed them out.

            --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
            If you have a question please use the forum so others can benefit from the solution in the future

            1 Reply Last reply
            1
            • O Offline
              O Offline
              opengpu
              wrote on last edited by
              #28

              thank you

              1 Reply Last reply
              0
              • O Offline
                O Offline
                opengpu
                wrote on last edited by opengpu
                #29

                anyone ever used libcurl to send email to smtp server?how many milliseconds it need for sending mail one time?is it fast enough to send email by libcurl in mainThread?

                i tried this one, it works. but it's slow, as it needs about 3000 milliseconds for sending email one time.
                https://github.com/bluetiger9/SmtpClient-for-Qt

                raven-worxR 1 Reply Last reply
                0
                • O opengpu

                  anyone ever used libcurl to send email to smtp server?how many milliseconds it need for sending mail one time?is it fast enough to send email by libcurl in mainThread?

                  i tried this one, it works. but it's slow, as it needs about 3000 milliseconds for sending email one time.
                  https://github.com/bluetiger9/SmtpClient-for-Qt

                  raven-worxR Offline
                  raven-worxR Offline
                  raven-worx
                  Moderators
                  wrote on last edited by
                  #30

                  @opengpu said in is there anyway to Send Email to someone in Qt?:

                  as it needs about 3000 milliseconds for sending email one time.

                  you mean 3000 ms till you've sent the email contents to the server?
                  or 3000 ms till you received it in the receivers mailbox?

                  --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
                  If you have a question please use the forum so others can benefit from the solution in the future

                  O 1 Reply Last reply
                  1
                  • raven-worxR raven-worx

                    @opengpu said in is there anyway to Send Email to someone in Qt?:

                    as it needs about 3000 milliseconds for sending email one time.

                    you mean 3000 ms till you've sent the email contents to the server?
                    or 3000 ms till you received it in the receivers mailbox?

                    O Offline
                    O Offline
                    opengpu
                    wrote on last edited by
                    #31

                    @raven-worx just the sent code complish

                    1 Reply Last reply
                    0
                    • O Offline
                      O Offline
                      opengpu
                      wrote on last edited by
                      #32
                          // 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 password
                          // for smtp authentification.
                      
                          smtp.setUser("your_email_address@host.com");
                          smtp.setPassword("your_password");
                      
                          // Now we create a MimeMessage object. This is the email.
                      
                          MimeMessage message;
                      
                          EmailAddress sender("your_email_address@host.com", "Your Name");
                          message.setSender(&sender);
                      
                          EmailAddress to("recipient@host.com", "Recipient's Name");
                          message.addRecipient(&to);
                      
                          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
                      
                          if (!smtp.connectToHost()) {
                              qDebug() << "Failed to connect to host!" << endl;
                              return -1;
                          }
                      
                          if (!smtp.login()) {
                              qDebug() << "Failed to login!" << endl;
                              return -2;
                          }
                      
                          if (!smtp.sendMail(message)) {
                              qDebug() << "Failed to send mail!" << endl;
                              return -3;
                          }
                      
                          smtp.quit();
                      
                      1 Reply Last reply
                      1
                      • O Offline
                        O Offline
                        opengpu
                        wrote on last edited by
                        #33

                        the time before the 1st line between after the last line.

                        raven-worxR 1 Reply Last reply
                        0
                        • O opengpu

                          the time before the 1st line between after the last line.

                          raven-worxR Offline
                          raven-worxR Offline
                          raven-worx
                          Moderators
                          wrote on last edited by
                          #34

                          @opengpu
                          does it help to keep the SmtpClient instance? instead of creating a new one everytime you send an email

                          --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
                          If you have a question please use the forum so others can benefit from the solution in the future

                          O 1 Reply Last reply
                          2
                          • raven-worxR raven-worx

                            @opengpu
                            does it help to keep the SmtpClient instance? instead of creating a new one everytime you send an email

                            O Offline
                            O Offline
                            opengpu
                            wrote on last edited by
                            #35

                            @raven-worx said in is there anyway to Send Email to someone in Qt?:

                            does

                            seems not. i put all of this in another thread. so better. but the time of this func is still slow. the time is mainly cost on connectToHost, login, sendMail. and u can easily test it.

                            raven-worxR 1 Reply Last reply
                            0
                            • O opengpu

                              @raven-worx said in is there anyway to Send Email to someone in Qt?:

                              does

                              seems not. i put all of this in another thread. so better. but the time of this func is still slow. the time is mainly cost on connectToHost, login, sendMail. and u can easily test it.

                              raven-worxR Offline
                              raven-worxR Offline
                              raven-worx
                              Moderators
                              wrote on last edited by raven-worx
                              #36

                              @opengpu said in is there anyway to Send Email to someone in Qt?:

                              seems not. i put all of this in another thread. so better. but the time of this func is still slow. the time is mainly cost on connectToHost, login, sendMail. and u can easily test it.

                              well it doesn't matter if you move it to another thread if you still create a new instance everytime you send an email.

                              Also where does the SmtpClient class come from?

                              --- SUPPORT REQUESTS VIA CHAT WILL BE IGNORED ---
                              If you have a question please use the forum so others can benefit from the solution in the future

                              1 Reply Last reply
                              0
                              • R Offline
                                R Offline
                                Robert Hairgrove
                                wrote on last edited by
                                #37

                                Since no one has mentioned it, you can use QDesktopServices::openUrl() with a URL like "mailto:anybody@anywhere.com" which will open the default email client as a new message to that address. However, the user must fill in the subject and message body as well as adding any additional CC or BCC addresses, etc.

                                But this might be enough if it is all you need, and extremely simple to use.

                                1 Reply Last reply
                                0
                                • W Offline
                                  W Offline
                                  wassimkhemiri
                                  wrote on last edited by
                                  #38
                                  This post is deleted!
                                  1 Reply Last reply
                                  0
                                  • M Offline
                                    M Offline
                                    maksimilijan
                                    wrote on last edited by maksimilijan
                                    #39
                                    This post is deleted!
                                    JonBJ jsulmJ 2 Replies Last reply
                                    0
                                    • M maksimilijan

                                      This post is deleted!

                                      JonBJ Online
                                      JonBJ Online
                                      JonB
                                      wrote on last edited by
                                      #40

                                      @maksimilijan
                                      This is what POP3 or IMAP do?

                                      M 1 Reply Last reply
                                      0
                                      • M maksimilijan

                                        This post is deleted!

                                        jsulmJ Offline
                                        jsulmJ Offline
                                        jsulm
                                        Lifetime Qt Champion
                                        wrote on last edited by
                                        #41

                                        @maksimilijan Please stop double posting!
                                        https://forum.qt.io/topic/70601/how-to-send-email-using-qt-5-5-1/22

                                        https://forum.qt.io/topic/113070/qt-code-of-conduct

                                        1 Reply Last reply
                                        0
                                        • JonBJ JonB

                                          @maksimilijan
                                          This is what POP3 or IMAP do?

                                          M Offline
                                          M Offline
                                          maksimilijan
                                          wrote on last edited by
                                          #42
                                          This post is deleted!
                                          jsulmJ 1 Reply Last reply
                                          0

                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups
                                          • Search
                                          • Get Qt Extensions
                                          • Unsolved