A Simple Gmail Client

3:42 AM
In This Post I will Guide u To making a Simple Gmail Client  to send Your Emails using Gmail Account Using Vb.net

 Let me Show You how final Result will Look Like:





1. For Sending Mail Through Vb.net. This Client Uses  "Imports System.Net.Mail".
    So First Import it to your Code





Imports System.Net.Mail

2. Layout All the Controls As Shown In the Above Figure

3. There is Progress Bar after the send Button. I have used Backgroud Worker To Send the Mail. So that When Mail Sending is in Progress the Screen Wont Stop Working.

4. Now Here is the Complete Code

First Define This In your Form

Dim msg As New MailMessage 
 Dim i As Integer 

Form's Load Event

Me.ProgressBar1.MarqueeAnimationSpeed = 0

Write This to Send Button's Click Event
msg.To.Add(Me.txtto.Text) 
        msg.From = New MailAddress(Me.txtuser.Text) 
        msg.Subject = Me.txtsubject.Text 
        msg.Body = Me.txtbody.Text 
        '' for attachment 
        For i = 0 To Me.ListBox1.Items.Count - 1 
            msg.Attachments.Add(New Attachment(Me.ListBox1.Items(i).ToString)) 
        Next 
        Me.Button1.Enabled = False 
        Me.Button1.Text = "Sendign.." 
        Me.ProgressBar1.Visible = True 
        Me.ProgressBar1.MarqueeAnimationSpeed = 100 
        Me.BackgroundWorker1.RunWorkerAsync()  


Attach Button's Click Event ( Button beside the listbox)
Dim d As New OpenFileDialog 
        d.ShowDialog() 
        Me.ListBox1.Items.Add(d.FileName.ToString()) 
        Me.ListBox1.Visible = True  


Now its the Back Ground Worker ...
Background worker's Do work Event:
Private Sub BackgroundWorker1_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles BackgroundWorker1.DoWork 
        
        Dim i As Integer = 0 
        Dim smtp As New SmtpClient 
        smtp.Host = "smtp.gmail.com" 
        smtp.EnableSsl = True 
        smtp.Port = 587 
        smtp.Timeout = 300000 
        smtp.Credentials = New Net.NetworkCredential(Me.txtuser.Text, Me.txtpass.Text) 
        'Dim ms As MailMessage 
        'ms = e.Argument 
        Try 
            '  Label5.Text = "Sending Message......." 
            'Me.Button1.Text = "Sending...." 
            ' Me.Button1.Enabled = False 
            'Me.BackgroundWorker1.ReportProgress(i,  
            smtp.Send(msg) 
            e.Result = "Done" 
        Catch ex As Exception 
            'Label5.Text = "Sending Failed........" 
            MessageBox.Show(ex.ToString()) 
        End Try  

Background Worker's Run work Completed Event:
Private Sub BackgroundWorker1_RunWorkerCompleted(ByVal sender As System.Object, ByVal e As System.ComponentModel.RunWorkerCompletedEventArgs) Handles BackgroundWorker1.RunWorkerCompleted 
        ' Label5.Text = "Message Sending Complete" 
        Me.ProgressBar1.MarqueeAnimationSpeed = 0 
        Me.Button1.Text = "Send" 
        Me.Button1.Enabled = True 
        MessageBox.Show("Sent") 
    End Sub  

And It's Done.

For Complete Project Email me at sandeepparekh9@gmail.com

1 comments:

{ Adnan Hussain } at: July 18, 2016 at 2:29 AM said...

sir,
please send me its source code at
AdnanHussainTurki@gmail.com

Post a Comment