Inviare email con VB.NET
Per inviare email con VB.NET non dobbiamo installare librerie aggiuntive.
Abbiamo già tutto a disposizione; ma considerate che il codice qua sotto è generico, e l'invio dipende anche dal settaggio della vsotra casella email.
Ad esempio per Gmail dovete configurarla appositamente attivando le app meno sicure; sennò non riuscirete ad inviarle.
Detto ciò vediamo il codice di esempio:
Imports System.Net
Imports System.Net.Mail
Module Module1
Sub Main()
Try
Dim smtpClient As New SmtpClient("SMTP_SERVER", PORTA_SMTP)
smtpClient.Credentials = New NetworkCredential("TUA_EMAIL", "TUA_PWD")
smtpClient.UseDefaultCredentials = False
smtpClient.EnableSsl = True
Dim mailMessage As New MailMessage()
mailMessage.From = New MailAddress("TUA_EMAIL")
mailMessage.To.Add("INDIRIZZO")
mailMessage.Subject = "Invio da VB.NET"
mailMessage.IsBodyHtml = True
mailMessage.Body = "Ciao, questa è una email per testare VB.NET"
smtpClient.Send(mailMessage)
Console.WriteLine("Email inviata")
Catch e As SmtpException
Console.WriteLine("SMTP: " & e.Message)
Console.WriteLine(e.ToString)
Catch e As Exception
Console.WriteLine("ERRORE: " & e.Message)
End Try
End Sub
End Module
Come già detto il codice è abbastanza generico, e più o meno vale per tutti gli indirizzi.
Ovviamente dovete andarvi a prendere il server SMTP e la porta della vostra casella.
Enjoy!
vbnet smtpclient smtp mailmessage mailaddress
2 Commenti
Una domanda, perchè ci sono due "catch e" di cui nel primo di sono due console.write (di cui unsa scrive il messaggio di errore mentre la 2° ?). Naturalmente il codice non va in compilazione per il doppio catch
12/12/2020Ciao! questi tutorial sono uno spettacolo! Una domanda sul sistema di invio delle email, la modalità app meno sicure di gmail non funzionerà più tra qualche mese e bisognerà passare all'oauth 2.0 , come si dovrebbe procedere per riuscire a non farsi bloccare da questo nuovo controllo di sicurezza ? Grazie del tuo aiuto!
08/04/2020