目录

VB.Net - 发送电子邮件( Send Email)

VB.Net允许从您的应用程序发送电子邮件。 System.Net.Mail命名空间包含用于将电子邮件发送到简单邮件传输协议(SMTP)服务器以进行传递的类。

下表列出了一些常用类 -

Sr.No. 类和描述
1

Attachment

表示电子邮件的附件。

2

AttachmentCollection

存储要作为电子邮件的一部分发送的附件。

3

MailAddress

表示电子邮件发件人或收件人的地址。

4

MailAddressCollection

存储与电子邮件关联的电子邮件地址。

5

MailMessage

表示可以使用SmtpClient类发送的电子邮件。

6

SmtpClient

允许应用程序使用简单邮件传输协议(SMTP)发送电子邮件。

7

SmtpException

表示当SmtpClient无法完成Send或SendAsync操作时引发的异常。

SmtpClient类

SmtpClient类允许应用程序使用简单邮件传输协议(SMTP)发送电子邮件。

以下是SmtpClient类的一些常用属性 -

Sr.No. 财产和描述
1

ClientCertificates

指定应使用哪些证书来建立安全套接字层(SSL)连接。

2

Credentials

获取或设置用于对发件人进行身份验证的凭据。

3

EnableSsl

指定SmtpClient是否使用安全套接字层(SSL)来加密连接。

4

Host

获取或设置用于SMTP事务的主机的名称或IP地址。

5

Port

获取或设置用于SMTP事务的端口。

6

Timeout

获取或设置一个值,该值指定同步发送调用超时之前的时间量。

7

UseDefaultCredentials

获取或设置一个布尔值,该值控制是否随请求一起发送DefaultCredentials。

以下是SmtpClient类的一些常用方法 -

Sr.No. 方法和描述
1

Dispose

将QUIT消息发送到SMTP服务器,正常结束TCP连接,并释放当前SmtpClient类实例使用的所有资源。

2

Dispose(Boolean)

向SMTP服务器发送QUIT消息,正常结束TCP连接,释放当前SmtpClient类实例使用的所有资源,并可选择处置受管资源。

3

OnSendCompleted

引发SendCompleted事件。

4

Send(MailMessage)

将指定的邮件发送到SMTP服务器以进行传递。

5

Send(String, String, String, String)

将指定的电子邮件发送到SMTP服务器以进行传递。 使用String对象指定邮件发件人,收件人,主题和邮件正文。

6

SendAsync(MailMessage, Object)

将指定的电子邮件发送到SMTP服务器以进行传递。 此方法不会阻止调用线程,并允许调用者将对象传递给操作完成时调用的方法。

7

SendAsync(String, String, String, String, Object)

将电子邮件发送到SMTP服务器以进行传递。 使用String对象指定邮件发件人,收件人,主题和邮件正文。 此方法不会阻止调用线程,并允许调用者将对象传递给操作完成时调用的方法。

8

SendAsyncCancel

取消异步操作以发送电子邮件。

9

SendMailAsync(MailMessage)

将指定的邮件发送到SMTP服务器以作为异步操作传递。

10

SendMailAsync(String, String, String, String)

将指定的邮件发送到SMTP服务器以作为异步操作传递。 。 使用String对象指定邮件发件人,收件人,主题和邮件正文。

11

ToString

返回表示当前对象的字符串。

以下示例演示如何使用SmtpClient类发送邮件。 在这方面应注意以下几点 -

  • 您必须指定用于发送电子邮件的SMTP主机服务器。 不同主机服务器的HostPort属性将不同。 我们将使用gmail服务器。

  • 如果SMTP服务器需要,您需要提供Credentials以进行身份​​验证。

  • 您还应分别使用MailMessage.FromMailMessage.To属性提供发件人的电子邮件地址以及收件人的电子邮件地址。

  • 您还应使用MailMessage.Body属性指定邮件内容。

例子 (Example)

在这个例子中,让我们创建一个发送电子邮件的简单应用程序。 采取以下步骤 -

  • 在表单中添加三个标签,三个文本框和一个按钮控件。

  • 将标签的文本属性分别更改为“From”,“To:”和“Message:”。

  • 将文本的名称属性分别更改为txtFrom,txtTo和txtMessage。

  • 将按钮控件的text属性更改为“Send”

  • 在代码编辑器中添加以下代码。

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 = "iowiki.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工具栏上的“ Start按钮执行并运行上述代码时,它将显示以下窗口,您将使用该窗口发送电子邮件,自己尝试。

从VB.Net发送电子邮件
↑回到顶部↑
WIKI教程 @2018