Solved

Releasing file after sending it as attachment VB.net

Posted on 2009-05-15
5
296 Views
Last Modified: 2012-05-07
Hi

I have a problem, using the code bellow I send a file as attachment, but I have trouble as the program dose not release it after the file is sent.

Please help me to release the file so that other processes can use it

Michal
'Sending module
        sender = Form1.TextBox42.Text
        recipient = Form1.TextBox50.Text
        Subject = "Todays File " & Fdate & ".csv"
        attachmentString = ArchiveLocation & "\Archives\" & AnyDate.Year.ToString("0000") & "\" & AnyDate.Month.ToString("00") & "\" & Fdate & ".csv"
 
        Dim fromAddress As New Net.Mail.MailAddress(sender)
        Dim toAddress As New Net.Mail.MailAddress(recipient)
        Dim message As New Net.Mail.MailMessage(fromAddress, toAddress)
 
        Dim mailSender As Net.Mail.SmtpClient
        ' Change the Smtp server name on the next line
        mailSender = New Net.Mail.SmtpClient(Form1.TextBox41.Text, Form1.TextBox55.Text)
 
        ' message.Bcc.Add(fromAddress)
        message.Subject = Subject
        message.IsBodyHtml = True
        message.Body = "Todays CSV File "
 
        If Not attachmentString = "" Then
            Dim msgAttach As New Net.Mail.Attachment(attachmentString)
            message.Attachments.Add(msgAttach)
        End If
 
        Try
 
            mailSender.Send(message)
 
       
            MsgBox("File Sent")
 
        Catch ex As Exception
            MessageBox.Show(ex.Message, "Error Mail Not Sent")
        End Try
101:
    End Sub

Open in new window

0
Comment
Question by:MichMat
  • 3
5 Comments
 
LVL 12

Expert Comment

by:rgn2121
ID: 24393730
Do you dispose of your message object?  I have never had that issue and I have an app that exports data to Excel, attches it and sends it out.
0
 
LVL 12

Accepted Solution

by:
rgn2121 earned 500 total points
ID: 24393737
Something like this...
'Code to send email
        smtpServer.Send(msg)
        msg.Dispose()
        smtpServer = Nothing
        msg = Nothing

Open in new window

0
 
LVL 12

Expert Comment

by:rgn2121
ID: 24393745
I know that it doesn't retain access, because I delete the file after it has been sent...
0
 
LVL 5

Expert Comment

by:burningmace
ID: 24393748
Load the attachment as an IO stream:
Dim fileName As String = "C:\file.txt"
Dim attFile As New FileStream(fileName, FileMode.Open, FileAccess.Read)
Dim att As New Net.Mail.Attachment(attFile, "attachment-file-name.txt")
' ... send code goes here ...
Try
    attFile.Close()
Catch ex As Exception
End Try

Open in new window

0
 

Author Closing Comment

by:MichMat
ID: 31581851
Thank you that fixed the issue
0

Featured Post

Live: Real-Time Solutions, Start Here

Receive instant 1:1 support from technology experts, using our real-time conversation and whiteboard interface. Your first 5 minutes are always free.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction When many people think of the WebBrowser (http://msdn.microsoft.com/en-us/library/2te2y1x6%28v=VS.85%29.aspx) control, they immediately think of a control which allows the viewing and navigation of web pages. While this is true, it's a…
Parsing a CSV file is a task that we are confronted with regularly, and although there are a vast number of means to do this, as a newbie, the field can be confusing and the tools can seem complex. A simple solution to parsing a customized CSV fi…
This Micro Tutorial demonstrates using Microsoft Excel pivot tables, how to reverse engineer competitors' marketing strategies through backlinks.
Established in 1997, Technology Architects has become one of the most reputable technology solutions companies in the country. TA have been providing businesses with cost effective state-of-the-art solutions and unparalleled service that is designed…

776 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question