Torna al Thread
Dim thread1 As New Thread(AddressOf invio_mail)
Dim job_1 As String
Dim mittente_1 As String
Dim oggetto_1 As String
Dim corpo_1 As String
Dim id_utente As Integer
Dim sessionID As String
Dim dati_mail As New Data.DataSet
Dim dati_allegati As New Data.DataSet
Protected Sub invio_Click(ByVal sender As Object, ByVal e As System.EventArgs)
If Session("username") = "" Then
Response.Redirect("../../default.aspx")
Response.End()
End If
job_1 = Request.Form("job")
mittente_1 = Request.Form("mittente")
oggetto_1 = Request.Form("oggetto")
corpo_1 = Request.Form("corpo")
id_utente = Session("id_utente")
sessionID = Session.SessionID
dati_mail = inserisci.FE_recupera_destinatari(sessionID, Request.Form("id_mail"))
Dim id_mail_inviata As Integer
If dati_mail.Tables("select").Rows.Count <> 0 Then
id_mail_inviata = inserisci.FE_inserisci_mail(id_utente, mittente_1, job_1, oggetto_1, corpo_1, sessionID, 1, 4, Request.Form("id_mail"))
dati_allegati = inserisci.FE_recupera_allegati(sessionID, Request.Form("id_mail"))
thread1.Start()
If Request.Form("id_mail") <> 0 Then
Response.Redirect("visualizza.aspx?id_mail=" & Request.Form("id_mail"))
Else
Response.Redirect("visualizza.aspx?id_mail=" & id_mail_inviata)
End If
Me.job.Text = ""
Me.mittente.Text = ""
Me.oggetto.Text = ""
Me.corpo.Text = ""
Else
Dim cs As ClientScriptManager = Page.ClientScript
cs.RegisterStartupScript(Me.GetType(), "", "alert('Attenzione! Aggiungere destinatari a cui inviare la mail!')", True)
End If
End Sub
Public Sub invio_mail()
For i = 0 To dati_mail.Tables("select").Rows.Count - 1
Try
Dim oMsg As MailMessage = New MailMessage()
oMsg.To.Add(dati_mail.Tables("select").Rows(i).Item("mail_dest"))
oMsg.From = New MailAddress(mittente_1)
oMsg.Subject = oggetto_1
oMsg.IsBodyHtml = True
For j = 0 To dati_allegati.Tables("select").Rows.Count - 1
Dim media As New Attachment(Server.MapPath("") & "/allegati/" & dati_allegati.Tables("select").Rows(j).Item("nome_file"))
media.Name = dati_allegati.Tables("select").Rows(j).Item("nome_file")
oMsg.Attachments.Add(media)
Next
oMsg.Body = corpo_1.Replace("$nome_cognome", dati_mail.Tables("select").Rows(i).Item("titolo") & " " & dati_mail.Tables("select").Rows(i).Item("nome_dest") & " " & dati_mail.Tables("select").Rows(i).Item("cognome_dest"))
Dim oSmtp As SmtpClient = New SmtpClient("smtp.fastwebnet.it")
oSmtp.Send(oMsg) 'l errore viene riscontrato sempre qui!
inserisci.FE_conferma_invio(dati_mail.Tables("select").Rows(i).Item("id_dest"))
oMsg.Dispose()
oMsg = Nothing
Catch ex As Exception
End Try
Next
Dim oMsg3 As MailMessage = New MailMessage()
oMsg3.To.Add("daniele.bertolotti@gruppocomunica.it")
oMsg3.To.Add("salvatore.buongallino@gruppocomunica.it")
oMsg3.To.Add("luca.lambri@gruppocomunica.it")
oMsg3.From = New MailAddress("groupware@gruppocomunica.it")
oMsg3.Subject = "Terminato invio mail"
oMsg3.Body = "Siamo lieti di comunicarvi che l'invio delle e-mail è terminato con successo"
Dim oSmtp2 As SmtpClient = New SmtpClient("smtp.fastwebnet.it")
oSmtp2.Send(oMsg3)
oMsg3.Dispose()
oMsg3 = Nothing
dati_mail.Dispose()
dati_mail = Nothing
dati_allegati.Dispose()
dati_allegati = Nothing
thread1.Abort()
End Sub