三、发送邮件
接收邮件是一件非常复杂的工作,但发送邮件却是非常的容易。我们所需要的就是使用SmtpClient对象和MailMessage发送邮件,这两个类都在System.Net.Mail命名空间中。在上面代码中调用的SendEmail()子程序的代码如下:
' 发送邮件 Private Sub SendEmail( _ ByVal Email As String, _ ByVal Subject As String, _ ByVal Msg As String) Try Dim mailmessage As New MailMessage With mailmessage .From = New MailAddress(USER_NAME) ' 发送到所有的订阅用户 If Email = String.Empty Then sqlCmd = New SqlCommand( _ "SELECT * FROM Users", conn) Dim reader As SqlDataReader conn.Open() reader = sqlCmd.ExecuteReader While reader.Read .To.Add(reader(0)) End While conn.Close() Else .To.Add(Email) End If ' 标题 .Subject = Subject ' 邮件内容 .Body = msg End With SMTPClient.Send(mailmessage) Catch ex As Exception Console.WriteLine(ex.ToString) End Try End Sub
如上Email参数为空,程序将会向所有订阅用户发送邮件。否则,将会向指定的用户发送邮件。发送信息的按钮中的代码如下:
'---向所有的订阅用户发送信息--- Private Sub btnSendMessage_Click( _ ByVal sender As System.Object, _ ByVal e As System.EventArgs) _ Handles btnSendMessage.Click SendEmail(String.Empty, txtSubject.Text, txtMessage.Text) MsgBox("Message sent!") End Sub