smtp.h

来自「一个批量发送电子邮件的程序」· C头文件 代码 · 共 56 行

H
56
字号
// SMTP.h: interface for the CSMTP class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_SMTP_H__14387B48_E339_4CC3_BD01_9BE6C6010E46__INCLUDED_)
#define AFX_SMTP_H__14387B48_E339_4CC3_BD01_9BE6C6010E46__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
#include <afxsock.h>
#include "MailMessage.h"
#define SMTP_PORT 25
#define RESPONSE_BUFFER_SIZE 1024
class CSMTP  
{
public:
	CSMTP(LPCSTR szSMTPServerName,UINT nPort = SMTP_PORT);
	virtual ~CSMTP();
	CString GetLastError();
	UINT GetPort();
	BOOL DisConnect();
	BOOL Connect();
	virtual BOOL FormatMailMessage(CMailMessage * msg);
	BOOL SendMessage(CMailMessage * msg);
	CString GetServerHostName();
private:
	BOOL get_response(UINT response_expect);
	CString cook_body(CMailMessage * pmg);
	CString m_sError;
	BOOL m_bConnected;
	UINT m_nPort;
	CString m_sSTMPServerHostName;
	CSocket m_wsSMTPServer;

protected:
	virtual BOOL transmit_message(CMailMessage * msg);
	struct response_code
	{
		UINT nResponse;
		TCHAR * sMessage;
	};
	enum eResponse
	{
		GENERIC_SUCCESS = 0,
		CONNECT_SUCCESS,
		DATA_SUCCESS,
		QUIT_SUCCESS,
		LAST_RESPONSE
	};
	TCHAR * response_buf;
	static response_code response_table[];
};

#endif // !defined(AFX_SMTP_H__14387B48_E339_4CC3_BD01_9BE6C6010E46__INCLUDED_)

⌨️ 快捷键说明

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