2011-07-01 212 views
0

我有興趣發送與c + +代碼的電子郵件。發送電子郵件從C + +代碼

到目前爲止,我已經嘗試在jwsmtplib上使用jwsmtp庫,並且我還沒有取得任何真正的成功。有什麼建議麼?下面是我的代碼:

//code: 
#include <iostream> 
#include <jwsmtp/jwsmtp.h> 

using std::cout; 
using std::endl; 

int main() { 

std::vector<char> vec; 
std::string mess("Foo\nBar"); 
for(std::string::size_type i = 0; i < mess.length(); ++i) 
    vec.push_back(mess[i]); 


jwsmtp::mailer mail("[email protected]",    // who the mail is too 
        "[email protected]",    // who the mail is from 
        "There is always room for FooBar", // subject for the email 
        vec,        // content of the message 
        "smtp.gmail.com",    // the smtp server to mail to 
      465,  //jwsmtp::mailer::SMTP_PORT, // default smtp port (25) 
        false);        // do not query MX records 

mail.username("[email protected]"); 
mail.password("mepassword"); 


//mail.authtype(jwsmtp::mailer::PLAIN); 
mail.send(); 

return 0; 
} 

我對其他庫或類絕對開放,但我與約束OS X.

我也下載POCO庫作爲我已經看到了在其他線程中提到,但我寧願有一個更扁平的學習曲線。如果有人有POCO的示例代碼,我會很高興看到。

謝謝

+2

您需要使用支持SSL的lib,因爲您只能使用加密連接通過gmail發送郵件。我只知道Windows libs可悲。 – Rob

+0

我在.NET上使用C#時遇到了類似的問題,我不得不通過端口587使用SSL來使其工作。 – Ferruccio

+0

@ Rob我以爲gmail可以和STL一起使用嗎?沒有?無論如何,我的代碼使用端口465.是否jwsmtp不能用於SSL? – csta

回答