Punya kebutuhan untuk mengirim email dan ngga tahu gimana caranya menambahkan fitur tersebut ke dalam aplikasi yang sedang kamu buat menggunakan vb.Net?
Jika iya kamu sudah berkunjung ke blog yang tepat. Karena saya akan jelaskan kepada kamu gimana caranya.
Untuk mengirim email melalui vb.net sebenarnya mudah sekali. Class yang dibutuhkan untuk diimport ke dalam vb.Net hanya System.Net.Mail. Tanpa class tersebut kamu tidak akan dapat mengirimkan email.
Selain class yang saya sebutkan diatas, tentu kamu akan membutuhkan koneksi internet. Tanpa itu mustahil email dapat dikirim ke alamat tujuan.
Hal lain yang sangat penting yang mesti kamu pahami adalah untuk mengirimkan sebuah email dibutuhkan yang namanya email sender (email si pengirim), email recipient (email si penerima), email cc (optional), email bcc (optional) dan SMTP setting.
Untuk SMTP setting yang digunakan untuk mengirimkan email bisa sama dengan account yang digunakan sebagai email sender. Jadi dalam hal ini tentu saja kamu harus mengetahui user name, password, port number dan nama dari smtp setting yang akan kamu gunakan.
Pada contoh tutorial kita kali ini, account yang akan kita gunakan adalah account gmail. Terus kalau kamu ingin menggunakan account selain gmail bagaimana? Caranya tetap sama kok. Kamu tinggal sesuaikan saja dengan account lain yang akan kamu gunakan.
Untuk mengirimkan email menggunakan account gmail ada beberapa hal yang mesti kamu lakukan terlebih dahulu. Mengapa demikian? Karena google tidak serta merta membolehkan kamu untuk menggunakan account gmail begitu saja diluar akses yang telah diperbolehkan oleh mereka.
Solusi :
- Masuklah ke dalam account gmail kamu terlebih dahulu.
- Buka link berikut ini https://accounts.google.com/DisplayUnlockCaptcha dan klik button allow access untuk mengijinkan google mengaktifkan account kamu.
- Buka link berikut ini https://www.google.com/settings/security/lesssecureapps dan pilih Turn On untuk Access for less secure apps. Jika sudah klik update.
- Coba logout dan login kembali.
- Mengharuskan anda untuk menggunakan authentication dan ssl pada saat mengirimkan email.
Proses Pembuatan Aplikasi
Buka IDE Visual Studio anda. Pada tutorial kali ini saya menggunakan visual studio 2008. Anda juga dapat menggunakan versi visual studio yang lain, namun coding yang ada disini sepertinya hanya compatible dengan versi visual studio 2005 ke atas. Untuk versi sebelumnya mungkin kalian harus melakukan beberapa penyesuaian.
Buat project baru dengan cara membuka menu file > New Project…
Pilih Windows Forms Application, ganti nama project menjadi SendEmail. Kemudian klik button OK. Tambahkan label, textbox, checkbox, groupbox dan button ke dalam form. Atur dan desain layoutnya menjadi seperti gambar berikut ini.
Masukkan coding berikut ini ke dalam form.
[code language="vb"]
Imports System.Net.Mail
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
TxtSMTPName.Text = "smtp.gmail.com"
Me.Width = 295
BtnSetting.Visible = True
BtnCloseSetting.Visible = False
End Sub
Private Sub BtnClose_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnClose.Click
Close()
End Sub
Private Sub BtnSend_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSend.Click
If SendEmail() = True Then _
MessageBox.Show("Email has been sent!", "Email sent", MessageBoxButtons.OK, MessageBoxIcon.Information)
End Sub
Private Function SendEmail() As Boolean
Dim success As Boolean = False
'Set the HostName
Dim host As String = Me.TxtSMTPName.Text
'Set the email information
Dim [From] As String = Me.TxtSender.Text
Dim [To] As String = Me.TxtTo.Text
Dim Subject As String = TxtSubject.Text
Dim Body As String = TxtBody.Text
'Create a new MailMessage, specifying who it is From and who it is going To
' and set the Subject and Body
Dim Email As New System.Net.Mail.MailMessage()
Email.From = New MailAddress(From)
Email.To.Add([To])
Email.Subject = Subject
Email.Body = Body
'================================================================================
'Create a new SmtpClient
Dim mailClient As New System.Net.Mail.SmtpClient()
mailClient.Host = host
'Set the port number, if it was provided
Dim port As Int32 = 0
Int32.TryParse(Me.txtPort.Text, port)
If port <> 0 Then _
mailClient.Port = port
Dim authenticationInfo As New System.Net.NetworkCredential(Me.txtUserName.Text.Trim(), Me.txtPassword.Text.Trim())
'***** Authentication (If checked)
If chkAuthenticate.Checked = True Then
'Create a new NetworkCredential,
' and set the User Name and Password
mailClient.UseDefaultCredentials = True
mailClient.Credentials = authenticationInfo
mailClient.EnableSsl = chkSSL.Checked
Else
mailClient.UseDefaultCredentials = False
mailClient.Credentials = authenticationInfo
mailClient.EnableSsl = chkSSL.Checked
End If
'***** End Authentication
Try
'Attempt to send the email, show any exceptions below
mailClient.Send(Email)
success = True
Catch ex As Exception
MessageBox.Show("Unable to send email, because the following error has occurred:" & vbCrLf & vbCrLf & _
ex.Message, _
"Error sending email", _
MessageBoxButtons.OK, MessageBoxIcon.Error)
success = False
End Try
Email.Dispose()
mailClient = Nothing
GC.Collect()
Return success
End Function
Private Sub BtnSetting_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSetting.Click
Me.Width = 532
BtnSetting.Visible = False
BtnCloseSetting.Visible = True
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnCloseSetting.Click
Me.Width = 295
BtnSetting.Visible = True
BtnCloseSetting.Visible = False
End Sub
End Class
[/code]
Selesai. Silahkan dicoba dan dijalankan aplikasinya. Untuk lebih jelas terutama buat kamu yang masih pemula tentu akan sedikit kebingungan. Jadi silahkan tonton saja video-video saya yang ada dibawah ini.
Video tutorial cara mengirim email menggunakan VB.NET melalui account Gmail
https://www.youtube.com/watch?v=Nip06A5dyik
Semoga bermanfaat. Silahkan tinggalkan komentar dan apabila ada pertanyaan kamu bisa sampaikan ke saya. Siapa tahu saya bisa bantu. Sampai jumpa
Comments
Post a Comment