chapter_3.cpp

来自「日本人开发的邮件解析 参考价值还是有的 很不错的资源」· C++ 代码 · 共 67 行

CPP
67
字号
#include    "emailkit.h"

int     main( int argc, char* argv[] )
{
    MimeMessage*   pMM;    // MimeMessage僆僽僕僃僋僩
    SmtpClient*    pSMTP;  // SmtpClient僆僽僕僃僋僩
    AddressList*   pAL;    // AddressList僐儗僋僔儑儞僆僽僕僃僋僩
    MimeText*      pMT;    // MimeText僆僽僕僃僋僩
    MessageID*     pMID;   // MessageID僆僽僕僃僋僩
    MailDateTime*  pMDT;   // MailDateTime僆僽僕僃僋僩

    MKDATETIME  mkdt;
    time_t      tt;
    struct tm*  ptm;

    pMM  = new  MimeMessage();  // MimeMessage僆僽僕僃僋僩惗惉
    pSMTP = new  SmtpClient();  // SmtpClient僆僽僕僃僋僩惗惉

    // From: 僼傿乕儖僪傪愝掕
    pMM->get_From( &pAL );
    pAL->AddMailAddress( L"taro@example.com", L"Taro Yamada", "US-ASCII", -1, NULL );

    // To: 僼傿乕儖僪傪愝掕
    pMM->get_To( &pAL );
    pAL->AddMailAddress( L"jiro@example.com", L"Jiro Suzuki", "US-ASCII", -1, NULL );

    // Subject: 僼傿乕儖僪傪愝掕
    pMM->get_Subject( &pMT );
    pMT->put_Value( L"Hello, World!" );
    pMT->put_CharacterSet( "US-ASCII" );

    // Message-ID: 僼傿乕儖僪傪愝掕
    pMM->get_MessageID( &pMID );
    pMID->NewID( "example.com" );

    // Content-Type: text/plain; charset=US-ASCII
    // Content-Transfer-Encoding: 7bit
    pMM->SetText( L"Hello!\r\nWORLD!!\r\n", -1, "US-ASCII", "plain", mkBodyAutoEncoding );

    // Date: www, dd mon yyyy hh:mm:dd tz
    pMM->get_OriginationDate( &pMDT );
    time( &tt );
    ptm = localtime( &tt );
    mkdt.year    = ptm->tm_year + 1900;
    mkdt.month   = ptm->tm_mon + 1;
    mkdt.day     = ptm->tm_mday;
    mkdt.hour    = ptm->tm_hour;
    mkdt.minute  = ptm->tm_min;
    mkdt.second  = ptm->tm_sec;

    pMDT->put_Value( mkdt );

    // SMTP server
    pSMTP->put_Server( "localhost" );
    pSMTP->put_Port( 25 );
    
    // SMTP transmission
    pSMTP->Connect();
    pSMTP->Send( pMM );
    pSMTP->Disconnect();

    delete  pSMTP;
    delete  pMM;

    return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?