用VB.NET发送电子邮件 [英] email sending in VB.NET

查看:114
本文介绍了用VB.NET发送电子邮件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我点击发送按钮时,不会发送电子邮件。发生错误。请帮我解决。



  Imports  System.Net。邮件


公开 Form1


私有 Sub Button1_Click(发件人 As 对象,e As EventArgs)句柄 Button1.Click

尝试
Dim Mail < span class =code-keyword> As New MailMessage

Mail.Subject = 测试电子邮件
邮件。 .Add(TextBox2。文字)
Mail.From = M. ailAddress(TextBox1.Text)
Mail.Body = TextBox3.Text

Dim SMTP 作为 SmtpClient( smtp。 gmail.com


SMTP.EnableSsl = True
SMTP.Credentials = System.Net.NetworkCredential( username password
SMTP.Port = 587
SMTP.Send(Mail)

Catch ex As Exception
MsgBox(ex.ToString)

结束 尝试
结束 Sub
结束





错误

 SMPT服务器要求安全连接或客户未经认证



已添加代码块[/ edit]

解决方案

您需要使用正确的用户名和密码发送。

试试< a href =http://www.codeproject.com/Articles/20546/How-to-Send-Mails-from-your-GMAIL-Account-through>如何通过VB.NET从您的GMAIL账户发送邮件或C#。 Windows编程,带有一点自定义 [ ^ ]。它可能会有帮助。


  Dim  smtp  As   SmtpClient 
使用 smtp
.Host = smtp.gmail.com
.Port = 25
.EnableSsl = True
.Credentials = < span class =code-keyword>新 System.Net.NetworkCredential( test@gmail.com test @ 123
.Timeout = 0
尝试
。发送(消息)
返回 True
Catch ex As 异常
返回 错误
结束 尝试
结束 使用





[edit]已添加代码块[/ edit]


< blockquote>我认为端口587是正确的我以前尝试过这个。请务必停用您的2步gmail帐户验证。



如果启用,Gmail会将安全代码发送到您的手机或电子邮件帐户,然后您必须输入每次尝试动态安全代码



BTW这是我的代码。



  Dim  mail  As   MailMessage 
mail.Subject = txtsubject.Text
mail。 To .Add( < span class =code-string> xxx@yahoo.com)
mail.From = MailAddress( yyyyy@gmail.com
mail.Body = Hello World

Dim smtp As S. mtpClient( smtp.gmail.com
smtp.EnableSsl = True
smtp.Credentials = System.Net.NetworkCredential( yyyyy@gmail.com xxxxxxxxxxx
smtp.Port = 587 代表gamil。
smtp.Send(mail)


When i click on SEND button the email is not sent. error occurs . please help me to fix it.

Imports System.Net.Mail


Public Class Form1


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

        Try
            Dim Mail As New MailMessage

            Mail.Subject = "test email"
            Mail.To.Add(TextBox2.Text)
            Mail.From = New MailAddress(TextBox1.Text)
            Mail.Body = TextBox3.Text

            Dim SMTP As New SmtpClient("smtp.gmail.com")


            SMTP.EnableSsl = True
            SMTP.Credentials = New System.Net.NetworkCredential("username", "password")
            SMTP.Port = "587"
            SMTP.Send(Mail)

        Catch ex As Exception
            MsgBox(ex.ToString)

        End Try
    End Sub
End Class



ERROR

THE SMPT SERVER REQUIRES SECURE CONNECTION OR THE CLIENT WAS NOT AUTHENTICATED


[edit]Code block added[/edit]

解决方案

You need send in the right user name and password.
Try How to Send Mails from your GMAIL Account through VB.NET or C#. Windows Programming, with a Bit of Customization[^]. It might help.


Dim smtp As New SmtpClient
        With smtp
            .Host = "smtp.gmail.com"
            .Port = "25"
            .EnableSsl = True
            .Credentials = New System.Net.NetworkCredential("test@gmail.com", "test@123")
            .Timeout = 0
            Try
                .Send(message)
                Return True
            Catch ex As Exception
                Return False
            End Try
        End With



[edit]Code block added[/edit]


I think Port 587 is correct i have tried this before. Be sure to disable your 2 steps gmail account verification.

If it is enabled, Gmail will send you security code either to your mobile or email account then you have to enter that dynamic security code every attempts

BTW here is my code.

Dim mail As New MailMessage
mail.Subject = txtsubject.Text
mail.To.Add("xxx@yahoo.com")
mail.From = New MailAddress("yyyyy@gmail.com")
mail.Body = "Hello World"

Dim smtp As New SmtpClient("smtp.gmail.com")
smtp.EnableSsl = True
smtp.Credentials = New                                              System.Net.NetworkCredential("yyyyy@gmail.com", "xxxxxxxxxxx")
smtp.Port = "587" ' for gamil.
smtp.Send(mail)


这篇关于用VB.NET发送电子邮件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆