使用.NET发送邮件的详细步骤

需积分: 10 0 下载量 182 浏览量 更新于2024-09-17 收藏 1KB TXT 举报
"本文将介绍如何使用.NET框架的System.Net.Mail命名空间来发送电子邮件,特别关注于使用SMTP服务器(如smtp.126.com)进行邮件传输和设置邮件内容及附件的方法。" 在.NET框架中,`System.Net.Mail`命名空间提供了一组类,用于创建和发送电子邮件。在给定的代码示例中,我们看到如何使用这些类来构建并发送一封邮件。首先,创建一个`SmtpClient`实例,这是SMTP服务器的客户端对象,它用于与SMTP服务器通信。在这里,SMTP服务器被设置为"smtp.126.com",并且指定端口为25,这是SMTP服务的标准端口。 ```vbnet Dim smtp As New System.Net.Mail.SmtpClient("smtp.126.com", 25) ``` 接着,设置SMTP服务器的凭据,通常需要提供有效的电子邮件地址和密码: ```vbnet smtp.Credentials = New System.Net.NetworkCredential("", "") ``` 然后,创建一个`MailMessage`对象,用于存储邮件的所有详细信息,如主题、正文和收件人: ```vbnet Dim mail As New System.Net.Mail.MailMessage() ``` 邮件的属性可以进一步设置,如设置主题、编码以及是否以HTML格式发送: ```vbnet mail.Subject = "测试邮件" mail.SubjectEncoding = System.Text.Encoding.GetEncoding("GB2312") mail.BodyEncoding = System.Text.Encoding.GetEncoding("GB2312") mail.From = New System.Net.Mail.MailAddress("lcxlqb@126.com") mail.Priority = System.Net.Mail.MailPriority.Normal mail.IsBodyHtml = True mail.Body = "测试邮件内容" ``` 邮件的收件人可以通过`To.Add`方法添加: ```vbnet mail.To.Add("收件人邮箱地址") ``` 如果需要添加附件,可以创建`Attachment`对象,并将其添加到`MailMessage`的`Attachments`集合中: ```vbnet Dim a As New System.Net.Mail.Attachment("D:\temp2\chs1\obj\release\ttt.txt") a.Name = "ttt.rar" mail.Attachments.Add(a) ``` 最后,通过`SmtpClient`的`Send`方法发送邮件,并在发送成功或失败时显示消息框: ```vbnet Try smtp.Send(mail) MessageBox.Show("发送成功") Catch MessageBox.Show("发送失败") Finally mail.Dispose() End Try ``` 这段代码展示了完整的邮件发送流程,包括错误处理和资源清理。请注意,在实际应用中,确保替换占位符(如空密码和收件人地址)以使用实际值,并确保拥有正确的凭据和服务器配置,否则可能会导致发送失败。此外,对于附件,确保文件路径有效,并且用户有权限访问该文件。