VB.NET发送电子邮件(通过使用SmtpClient类)

以下代码已通过VS2008测试。

[vb] view

plain copy

'''

'''

通过SmtpClient类发送电子邮件

'''

'''

收件人地址列表

'''

邮件主题

'''

邮件内容

'''

附件列表Hastable。KEY=文件名,Value文件路径

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

属性相信你也能编写出功能强大而又专业的电子邮件程序。

vb 发送html邮件,VB.net教您一招可以实现邮件自动发送自动收发邮箱相关推荐

  1. vb发送到文件服务器,VB实现文件上传到FTP服务器

    VB实现文件上传到FTP服务器 ftp.txt文件内容为: open 211.118.1.70 dongping sh12345 put ip.jpg bye VB内容为: Private Sub C ...

  2. 公众号如何发送小程序卡片,教你一招

    我们有遇到别人公众号发送小程序卡片的,就是那种关注自动推送消息,比如这种 教程开始: 1,注册快站账号:传送门 2,授权绑定你的公众号 3,进入快站公众号管理->自动回复 4,新增规则关键字,如 ...

  3. vb 发送html邮件,【VB】邮件发送功能

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 Email.cls 代码: Private mUserName As String Private mPassWord As String Private ...

  4. 计算机考研怎么给老师发邮件,考研复试前,手把手教你怎么给导师发邮件!4点要注意...

    考研成绩出来后,第一件事是干什么?当然不只是高兴,而是马上给心仪的导师发邮件,先露个"名字熟".不要以为初试考了高分或者过线了,一切都稳妥了,一时得意忘形,居然没联系导师,等想起时 ...

  5. VB.net小技巧——VB中利用TreeView控件和Box控件做知识备忘

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 VB.net小技巧--VB中利用TreeView控件和Box控件做知识备忘 这里不涉及代码的展示,主要是为了阐述一种做笔记的思想. 为 ...

  6. VB.net小技巧——VB.net中SHELL函数以及SendKeys函数

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 VB.net小技巧--VB.net中SHELL函数以及SendKeys函数 前言 shell 使用 前言 一直在研究怎么用VB.net ...

  7. 免费分享我的匿名邮件群发系统,可匿名发送: 163 126 139 gmail qq 21cn 263 及各类企业级邮件

    免费分享我的匿名邮件群发系统,可匿名发送: 163 126 139  gmail qq 21cn 263 及各类企业级邮件 下载地址1(含frame work框架版大小 200兆):  http:// ...

  8. java vb 速度_使用VB.NET加快代码开发速度

    以前在学校时,编写代码都是使用C#,习惯了C#的代码习惯,等工作后由于工作需要逐渐的开始采用了VB.NET开发项目,渐渐地喜欢上了VB.NET,现在我就罗列一些VB.NET加速代码开发的方法. 一.智 ...

  9. 免费分享我的匿名邮件群发系统,可匿名发送: 163 126 139 gmail qq 21cn 263 及各类企业级邮件

    免费分享我的匿名邮件群发系统,可匿名发送: 163 126 139  gmail qq 21cn 263 及各类企业级邮件 下载地址1(含frame work框架版大小 200兆):  http:// ...

最新文章

  1. php发布商品信息逻辑,php – 逻辑思考一个数据库结构:为用户发布的东西添加“标签” – 一个单独的表或……?...
  2. 简明python教程购买-简明Python教程:基本语法
  3. 信号公式汇总之傅里叶变换
  4. 集大通100%任务完成度签到
  5. oracle ora-00026,oracle错误代码
  6. 【必懂C++】C++可真是个“固执”的小可爱 02
  7. eureka需要替换吗_nacos无缝替换eureka
  8. xxljob默认登录_xxl-job安装部署整理
  9. 逐句深扒 Apache 许可协议原文,一文看懂!
  10. python有哪些用途-python的主要用途是什么
  11. 【福利】小米手机修改MAC地址教程
  12. qcap 教程_给winpe添加explorer教程(续):文件列表
  13. r语言中将茎叶图旋转90度_R语言(02)绘图
  14. win10上cmd命令中文显示问号?
  15. 蓝牙模块——基础知识介绍
  16. 鼠标掠过显示图片的demo
  17. 校园跑腿微信小程序跑腿同学带直播新版源码
  18. 【Pyecharts|GEO-Lines】全球航线图的绘制
  19. 【操作系统】CPU 时间片 分时 轮转调度
  20. 【历史上的今天】9 月 19 日:世界上第一个表情符号;微软发布 Virtual PC;苹果 UI 扁平化的开始

热门文章

  1. java sso单点登录源码_Java单点登录系统 sso源码下载
  2. 零基础10天学会网页制作第一天
  3. python控制机械臂6轴_基于Firmata协议的ROS Moveit六轴机械臂设计
  4. 接口自动化框架---为某东莞某证券设计的用例框架
  5. 成年人需要学会持续性学习(转载)
  6. 推特目前无法发送确认码
  7. 小学四年级家长计算机,小学四年级家长的寄语
  8. html旋转的环形菜单,前端开发圆形旋转导航菜单教程
  9. 使用Fiddler抓取手机APP数据包--360WIFI
  10. 力扣 495. 提莫攻击