简单电子邮件发送程序
这篇文章将向你展示如何编写一个程序,可以发送简单的电子邮件。简单是指这个程序只能发送纯文本,而且一次只能发送给一个收件人。
首先,建立一个新项目。
将窗体的Name属性更改为“frmSendMail”,将Caption属性更改为“简单邮件发件人”,将BorderStyle属性的值更改为“1-固定单个”。
向窗体添加一个Winsock控件。
将上述新消息,发送消息?关闭命令按钮的名称属性更改为cmdNew,cmdSend?和cmdClose。
将以下代码添加到相应的事件中。
Private Sub cmdNew_Click()
txt recipient = " "
txt subject = " "
txt message = " "
末端接头
私有Sub cmdClose_Click()
卸下我
末端接头
现在,编写发送邮件的代码。
如果你读过本网站上的上一篇文章“SMTP协议介绍”,你就已经知道我们在这里将使用什么样的命令。这些命令必须严格按照顺序发送。为了跟踪这个序列,我们将使用一个特殊的变量m_State,我们将使用它来存储当前SMTP进程的状态。
您可以将SMTP进程状态视为等待服务响应命令的状态,也就是说,有多少命令发送到服务器,就有多少状态。我们不能用VB数据类型来描述进程的状态。因此,在这个程序中使用了一种特殊的数据类型“SMTP_State”。将以下代码添加到窗体的声明部分:
私有枚举SMTP _ State
MAIL _ CONNECT
MAIL _ HELO
MAIL _ FROM
MAIL _ rcpt to
MAIL _ DATA
MAIL _ DOT
MAIL _ QUIT
End枚举
作为SMTP_State的私有m_State
将以下代码放入发送消息的Click事件中。
Private Sub cmdSend_Click()
Winsock1。Connect Trim$(txtHost),25
m_State = MAIL_CONNECT
末端接头
上面代码的第一行用于建立与服务器的连接,25是SMTP服务器的默认端口号。下一步是在Winsock的DataArrival事件中编写代码处理服务的响应。
0条评论