找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 4948|回复: 9

VB.net教您一招可以实现邮件自动发送自动收发邮箱

[复制链接]
发表于 2017-5-16 13:22:16 | 显示全部楼层 |阅读模式

VB.NET发送电子邮件(通过使用SmtpClient类)
以下代码已通过VS2008测试。



[vb] view plain copy


  •         ''' <summary>  
  •         ''' 通过SmtpClient类发送电子邮件  
  •         ''' </summary>  
  •         ''' <param name="ReceiveAddressList">收件人地址列表</param>  
  •         ''' <param name="Subject">邮件主题</param>  
  •         ''' <param name="Content">邮件内容</param>  
  •         ''' <param name="AttachFile">附件列表Hastable。KEY=文件名,Value文件路径</param>  
  •         Private Function SendMail(ByVal ReceiveAddressList As List(Of String), ByVal Subject As String, ByVal Content As String, _  
  •                                   Optional ByVal AttachFile As Hashtable = Nothing) As Boolean  
  •             Dim i As Integer  
  •             'SMTP客户端  
  •             Dim smtp As New System.Net.Mail.SmtpClient("SMTP.163.COM")  
  •             'smtp.Host = "smtp.163.com"       'SMTP服务器名称  
  •             '发件人邮箱身份验证凭证。 参数分别为 发件邮箱登录名和密码  
  •             smtp.Credentials = New System.Net.NetworkCredential("邮箱账户", "邮箱密码")  
  •             '创建邮件  
  •             Dim mail As New System.Net.Mail.MailMessage()  
  •             '主题编码  
  •             mail.SubjectEncoding = System.Text.Encoding.GetEncoding("GB2312")  
  •             '正文编码  
  •             mail.BodyEncoding = System.Text.Encoding.GetEncoding("GB2312")  
  •             '邮件优先级  
  •             mail.Priority = System.Net.Mail.MailPriority.Normal  
  •             '以HTML格式发送邮件,为false则发送纯文本邮箱  
  •             mail.IsBodyHtml = True  
  •             '发件人邮箱  
  •             mail.From = New System.Net.Mail.MailAddress("发件人邮箱")  
  •   
  •             '添加收件人,如果有多个,可以多次添加  
  •             If ReceiveAddressList.Count = 0 Then Return False  
  •             For i = 0 To ReceiveAddressList.Count - 1  
  •                 mail.To.Add(ReceiveAddressList.Item(i))  
  •             Next  
  •   
  •             '邮件主题和内容  
  •             mail.Subject = Subject  
  •             mail.Body = Content  
  •   
  •             '定义附件,参数为附件文件名,包含路径,推荐使用绝对路径  
  •             If Not AttachFile Is Nothing AndAlso AttachFile.Count <> 0 Then  
  •                 For Each sKey As String In AttachFile.Keys  
  •                     Dim objFile As New System.Net.Mail.Attachment(AttachFile.Item(sKey))  
  •                     '附件文件名,用于收件人收到附件时显示的名称  
  •                     objFile.Name = sKey  
  •                     '加入附件,可以多次添加  
  •                     mail.Attachments.Add(objFile)  
  •                 Next  
  •             End If  
  •   
  •             '发送邮件  
  •             Try  
  •                 smtp.Send(mail)  
  •                 MessageBox.Show("邮件发送成功!")  
  •                 Return True  
  •             Catch  
  •                 MessageBox.Show("邮件发送失败!")  
  •                 Return False  
  •             Finally  
  •                 mail.Dispose()  
  •             End Try  
  •         End Function  

本篇文章的主要开发环境是Visual Studio 2008,Visual Studio系列产品一直以来都提供了强大的控件功能,然而我们利用这些控件可以编写出功能强大的应用程序,Visual Studio2008在一些特性上也做出了许多的改进。本文主要利用微软的最新.net开发工具为大家展示创建邮件发送程序的方法,为大家介绍怎样向指定的邮件地址发送邮件,以及登录验证的一些技巧。很适合.net开发工具的初学者,具有一定的实用价值。  

  打开 Visual Studio 2008在文件 (File) 菜单上,单击新建项目 (New Project)。 在新建项目 (New Project) 对话框的模板 (Templates) 窗格中,单击 Windows 应用程序(Windows Application)。单击确定 (OK) 如图1。



[附件已丢失]



  选择Form1窗体,在Form1窗体中添加如下控件:

  GroupBox1、Label1、Label2、Label3、Label4、Label5、Label6、和同时创建7个文本框(Textbox1- Textbox7)、Checkbox1、Button1控件

  控件属性设置如下:
  



[附件已丢失]


  适当的调整控件在界面的布局,网站发贴软件最终界面效果如图2


[附件已丢失]

  接下来我们需要输入代码了,首先进入代码编辑器

  注意:在编写代码之前我们需要了解MailMessage 属性,在这里我们将会要使用MailMessage 属性。

  MailMessage 属性详细如下表所示


[附件已丢失]


  代码如下:  

  首先进行声明:

  Imports System.net.Mail

  Imports System.Text

  Imports System.Security

  Imports System.Net.Sockets  

  进入CheckBox1_CheckedChanged事件万能脚本工具 万能营销软件

  Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Checkbox1.CheckedChanged

   If Checkbox1.Checked = True Then

   txtName.Enabled = True

   txtPassword.Enabled = True

   Else

   txtName.Enabled = False

   txtPassword.Enabled = False

   End If

  End Sub   

  进入Button1_Click事件  

  Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

   Dim mail As New MailMessage()

   mail.From = New MailAddress(txtFrom.Text)

   mail.To.Add(txtaccept.Text)  

   '设置邮件内容

   mail.Subject = txtSubject.Text

   mail.Body = txtContent.Text  

   ''设置电子邮件优先级

   mail.Priority = MailPriority.High  

   '获取与此电子邮件传输的标头

   mail.Headers.Add("YourCompany", "yourname")

   mail.Headers.Add("YourLocation", "yourlocation")

   Dim Mysmtp As New SmtpClient(txtSMTP.Text)

   If Checkbox1.Checked = True Then

   Mysmtp.Credentials = New System.Net.NetworkCredential(txtName.Text, txtPassword.Text)

   End If

   Try

   Mysmtp.Send(mail)

   MsgBox("邮件已经发出,邮件已经发送到指定的邮件地址.", MsgBoxStyle.Information, "实例,创建邮件发送程序")

   Catch ex As Exception

   MsgBox(ex.Message, MsgBoxStyle.Critical, "抱歉。邮件发送失败")

   End Try  

   End Sub  

  代码输入完毕后,我们运行程序进行测试,填上自己邮箱的用户名及密码和SMTP服务器地址。发送一封电子邮件试一试,如图3。


[附件已丢失]

   提示:邮件发送成功,如图4。我们就成功的发送了电子邮件,大家在发送时需要注意SMTP的地址。



[附件已丢失]

  这是一个简单的邮件发送程序,本实例中用到了MailMessage 属性。程序编写完成后我们对MailMessage 属性有了很好的了解,好好地去利用MailMessage 属性相信你也能编写出功能强大而又专业的电子邮件程序。


qq.jpg
duote_03_10-22-24.jpg
duote_03_10-22-10.jpg
duote_03_10-21-58.jpg
duote_03_10-21-46.jpg
duote_03_10-21-24.jpg
duote_03_10-21-07.jpg

0

主题

824

回帖

1012

积分

软件网站中级元老会员

积分
1012
发表于 2017-5-19 01:15:58 | 显示全部楼层
,功能齐全,不懂的地方反复讲解,服务态度可以,赞一个。

0

主题

165

回帖

176

积分

软件网站会员账号

积分
176
发表于 2017-5-21 18:52:27 | 显示全部楼层
急但卖家做的依旧一丝不苟喜欢谢谢!!

0

主题

576

回帖

651

积分

软件网站元老会员

积分
651
发表于 2017-5-26 14:20:39 | 显示全部楼层
术员的服务态度非常的好,耐心、细心的解答我的每一个问题,包括教会我一些网站后台的操作方法,有问必答,非常耐心。有这样的员工,相信你们会越做越好,赞!

0

主题

857

回帖

1045

积分

软件网站中级元老会员

积分
1045
发表于 2017-5-29 09:12:22 | 显示全部楼层
!设计人员专业!来回改动无数次,都全力配合更改!

0

主题

815

回帖

990

积分

软件网站元老会员

积分
990
发表于 2017-5-30 05:21:44 | 显示全部楼层
没有时间搞了。

0

主题

577

回帖

610

积分

软件网站元老会员

积分
610
发表于 2017-6-2 05:08:50 | 显示全部楼层
推荐的店铺,客服超级nice,远程装修,全5分,棒棒滴!

0

主题

798

回帖

995

积分

软件网站元老会员

积分
995
发表于 2017-6-5 16:59:13 | 显示全部楼层
心,一直回答我。我自己一直弄不懂他很耐心。

0

主题

547

回帖

599

积分

软件网站元老会员

积分
599
发表于 2017-6-7 17:22:38 | 显示全部楼层
感谢店家的细心指导!!谢谢!

0

主题

1156

回帖

5

积分

软件网站新手

积分
5
发表于 2017-6-14 05:07:49 | 显示全部楼层
力,好评
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|

GMT+8, 2026-11-10 01:08

安卓脚本软件 · 键鼠盒子 · HID · 机械臂

快速回复 返回顶部 返回列表

随机推荐 · 热帖 / 新帖 / 随便看看

社区会员(随机展示)