发送邮件
VB.Net允许从您的应用程序发送电子邮件。System.Net.Mail命名空间包含用于向简单邮件传输协议(SMTP)服务器发送电子邮件以进行传递的类。
情报列出了一些常用的类:
| SN | 
类 | 
描述 | 
| 1 | 
附件 | 
表示对电子邮件的附件。 | 
| 2 | 
AttachmentCollection | 
存储要作为电子邮件的一部分发送的附件。 | 
| 3 | 
邮件地址 | 
表示电子邮件发件人或收件人的地址。 | 
| 4 | 
MailAddressCollection | 
存储与电子邮件相关联的电子邮件地址。 | 
| 5 | 
邮件留言 | 
表示可以使用SmtpClient类发送的电子邮件。 | 
| 6 | 
Smtp客户端 | 
允许应用程序使用简单邮件传输协议(SMTP)发送电子邮件。 | 
| 7 | 
SmtpException | 
表示当SmtpClient无法完成发送或SendAsync操作时引发的异常。 | 
SmtpClient类
SmtpClient类允许应用程序使用简单邮件传输协议(SMTP)发送电子邮件。
以下是SmtpClient类的一些常用属性:
| SN | 
属性 | 
描述 | 
| 1 | 
客户证书 | 
指定应使用某种证书建立安全专有层(SSL)连接。 | 
| 2 | 
证书 | 
获取或设置用于验证发件人的替代。 | 
| 3 | 
EnableSsl | 
指定SmtpClient是否使用安全专有层(SSL)加密连接。 | 
| 4 | 
主办 | 
获取或设置用于SMTP事务的主机的名称或IP地址。 | 
| 5 | 
港口 | 
获取或设置用于SMTP事务的端口。 | 
| 6 | 
超时 | 
获取或设置一个值,该值指定同步发送调用超时的时间量。 | 
| 7 | 
UseDefaultCredentials | 
获取或设置一个布尔值,该值控制是否随请求一起发送DefaultCredentials。 | 
以下是SmtpClient类的一些常用方法:
| SN | 
方法和说明 | 
| 1 | 
处理 向SMTP服务器发送QUIT消息,正常结束TCP连接,并释放SmtpClient类的当前实例使用的所有资源。 | 
| 2 | 
处置(布尔) 向SMTP服务器发送QUIT消息,正常结束TCP连接,释放由SmtpClient类的当前实例使用的所有资源,并且可选地处置托管资源。 | 
| 3 | 
OnSendCompleted 引发SendCompleted事件。 | 
| 4 | 
发送(MailMessage) 将指定的消息发送到SMTP服务器进行传递。 | 
| 5 | 
发送(字符串,字符串,字符串,字符串) 消息发件人,收件人,主题和邮件正文使用字符串对象指定。 | 
| 6 | 
SendAsync(MailMessage,Object) 此方法不会停止调用线程,并允许调用者将一个对象传递给操作完成时调用的方法。 | 
| 7 | 
SendAsync(字符串,字符串,字符串,字符串,对象)  将电子邮件发送到SMTP服务器进行传送。消息发件人,收件人,主题和邮件正文使用字符串对象指定。此方法不会阻止线程,并允许调用者将一个对象传递给操作完成时调用的方法。 | 
| 8 | 
SendAsyncCancel 取消异步操作以发送电子邮件。 | 
| 9 | 
SendMailAsync(MAILMESSAGE) 发送指定消息,以交付作为异步操作的SMTP服务器。 | 
| 10 | 
SendMailAsync(MailMessage)   将指定的消息发送到SMTP服务器以作为异步操作进行传递。 | 
| 11 | 
ToString   返回表示当前对象的字符串。 | 
以下示例演示如何使用SmtpClient类发送邮件。在这方面应注意以下几点:
您必须指定使用发送电子邮件的SMTP主机服务器。不同主机服务器的主机和端口属性将不同。
 
如果SMTP服务器需要,您需要授予认证证书。
 
您还应该分别使用MailMessage.From和MailMessage.To属性提供发件人的电子邮件地址和收件人的电子邮件地址。
 
您还应该使用MailMessage.Body属性指定消息内容。
 
示例
在这个例子中,让我们创建一个发送电子邮件的简单应用程序。执行以下步骤:
Imports System.Net.Mail
Public Class Form1
   Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
      ' Set the caption bar text of the form.   
      Me.Text = "tutorialspoint.com"
   End Sub
   Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
      Try
          Dim Smtp_Server As New SmtpClient
          Dim e_mail As New MailMessage()
          Smtp_Server.UseDefaultCredentials = False
          Smtp_Server.Credentials = New Net.NetworkCredential
          ("username@gmail.com", "password")
          Smtp_Server.Port = 587
          Smtp_Server.EnableSsl = True
          Smtp_Server.Host = "smtp.gmail.com"
          e_mail = New MailMessage()
          e_mail.From = New MailAddress(txtFrom.Text)
          e_mail.To.Add(txtTo.Text)
          e_mail.Subject = "Email Sending"
          e_mail.IsBodyHtml = False
          e_mail.Body = txtMessage.Text
          Smtp_Server.Send(e_mail)
          MsgBox("Mail Sent")
      Catch error_t As Exception
          MsgBox(error_t.ToString)
      End Try
   End Sub
您必须提供您的gmail地址和真实密码以获取替代。  
当使用Microsoft Visual Studio工具栏上的“开始”按钮执行并运行上述代码时,将显示以下窗口,您将使用该窗口发送电子邮件,自行尝试。
