簡體   English   中英

如何在 vb.net Windows 應用程序 2010 中發送電子郵件,通過 smtp 服務器使用 gmail 憑據

[英]how to send email in vb.net windows application 2010,using gmail credentials via smtp server

我正在嘗試在我的 VB.Net Windows 應用程序 (VS 2010) 中發送電子郵件,但我收到了

找不到 SMTP 主機

我的代碼如下,

Dim SmtpServer As New SmtpClient()
SmtpServer.Credentials = New Net.NetworkCredential("mymailid@gmail.com", "mypassword")
SmtpServer.Port = 25
SmtpServer.Host = "smtp.gmail.com"
SmtpServer.EnableSsl = True
mail = New MailMessage()
Dim addr() As String = TextBox1.Text.Split(",")
Try
   mail.From = New MailAddress("mymailid@gmail.com", "Developers", System.Text.Encoding.UTF8)
   Dim i As Byte
   For i = 0 To addr.Length - 1
       mail.To.Add(addr(i))
   Next
   mail.Subject = TextBox3.Text
   'mail.Body = TextBox4.Text
   If ListBox1.Items.Count <> 0 Then
      For i = 0 To ListBox1.Items.Count - 1
          mail.Attachments.Add(New Attachment(ListBox1.Items.Item(i)))
      Next
   End If
   SmtpServer.SendAsync(mail, mail.Subject)

嘗試將SmtpServer.Port設置為 587 ...

Dim SmtpServer As New SmtpClient("smtp.gmail.com", 587)
Dim mail As New MailMessage("sender address", "destination address", "subject", "body")
SmtpServer.Credentials = New Net.NetworkCredential("username/sender address","password")
SmtpServer.Send(Mail)

只是為了測試,我快速編寫了這段代碼,成功地將電子郵件發送到我的測試帳戶。 僅供參考,我在 SmtpServer.SendAsync 函數中將第二個參數作為 Nothing 發送。 我想您可以快速了解如何在 ASYNC 環境中實現它。

嘗試

        Dim SmtpServer As New SmtpClient()
        SmtpServer.Credentials = New Net.NetworkCredential("EMAIL FROM@gmail.com", "YOUR PASSWORD")
        SmtpServer.Port = 25
        SmtpServer.Host = "smtp.gmail.com"
        SmtpServer.EnableSsl = True
        Dim omail As New MailMessage()


        omail.From = New MailAddress("FROM EMAIL @gmail.com", "Asfand Iqbal", System.Text.Encoding.UTF8)

        omail.Subject = "test subject"
        omail.To.Add("test@gmail.com")

        SmtpServer.SendAsync(omail, Nothing)

    Catch ex As Exception
        MsgBox(ex.ToString)
    End Try

請試試

 Dim SmtpServer As New SmtpClient("smtp.gmail.com", 465)
 SmtpServer.EnableSsl = True
 SmtpServer.Credentials = New Net.NetworkCredential("name@gmail.com", "password")
 Dim mail As New MailMessage("name@gmail.com", "name@gmail.com", title, content)
 SmtpServer.Send(mail)
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 = "tutorialspoint.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
'Ghaffari

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM