VC MFC 郵件傳送功能的實現
http://www.naughter.com/smtp.html
CPJNSMTP目前是寫的比較完善的MFC程式,目前它原始碼最新是支援VS2015。
這個庫支援多國語言,傳送郵件不會出現亂碼。
並且支援SSL驗證,筆者已在QQ和163郵箱測通過,注意QQ郵箱設定第三方收件,用的是授權碼,不是郵箱密碼!
下面是筆者的經歷,因為該庫預設是支援win7系統的,如果要改成支援XP,得修改庫:
1.平臺工具集改成支援XP,
2.在原始碼中查詢InetNtop,替換成inet_ntoa, 程式碼如下:
#ifdef _X86_
USES_CONVERSION;
sIP = A2T(inet_ntoa(sockaddr_ipv4->sin_addr));
#else
InetNtop(AF_INET, &sockaddr_ipv4->sin_addr, sIP.GetBufferSetLength(46), 46);
sIP.ReleaseBuffer();
#endif
3.
在"Stdafx.h"
把所有0x0600改成0x0501, 因為0x0600是最小支援vistal的,0x0501最小支援XP
#ifndef WINVER
#define WINVER 0x0501
#endif
#ifndef _WIN32_WINNT
#define _WIN32_WINNT 0x0501
#endif
#ifndef _WIN32_WINDOWS
#define _WIN32_WINDOWS 0x0501
#endif
#ifndef _WIN32_IE
#define _WIN32_IE 0x0501
#endif
另外一個在CodeProject有個比較簡單的CSmtp,好用,最新修改版也支援TLS, SSL驗證。