Buon giorno a tutti. Il mio problema è, credo, abbastanza banale, ma sono due giorni che ci sbatto la testa e le ricerche sul web e nei vari forum sono state infruttuose. Lo scopo della mia applicazione è quello di distribuire via email un report a un certo numero di utenti che selezionerò con determinati criteri. Prima di sviluppare questa parte, che non mi preoccupa, volevo vedere se mi riusciva di automatizzare l'invio delle email prelevando gli indirizzi da un data base Access. il metodo Docmd.SendObject di Access non mi va bene perché permette di inviare, come allegato, solo un oggetto di Access stesso e non un file esterno come serve a me. Perciò ho pensato di sviluppare qualcosa in Visual Basic (Visual studio 2010 Express). Ho generato un form, ci ho messo un bottone e ho scritto quanto segue:
codice:
Imports System.Configuration
Imports System.Net
Imports System.Net.Mail
Imports System.Net.Configuration
Imports System.Net.Configuration.SmtpSection
Public Class Form1
Dim posta As New MailMessage()
Dim servo As New SmtpClient("smtp.pincopallo.com")
Dim istanza As New SmtpSection
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
istanza = New SmtpSection
istanza.Network.UserName = "Tecnico@pincopallo.com"
istanza.Network.Password = "***"
posta = New MailMessage
posta.From = New MailAddress("Tecnico@pincopallo.com")
posta.To.Add("claudiocolombo52@gmail.com")
posta.Subject = "Prova di invio con allegato"
posta.Priority = MailPriority.Normal
posta.Body = "Questa è una delle solite prove. Se la vedi la puoi cestinare!"
posta.Attachments.Add(New Attachment("c:\riepilogo impianto.pdf"))
servo.Send(posta)
End Sub
End Class
Naturalmente NON funziona! l'errore che mi viene restituito è il seguente:
"Nome di cassetta postale non consentito. Risposta del server: 5.7.1 <Tecnico@pincopallo.com>: Sender address rejected: not logged in"
Ho la netta Sensazione che nel codice manchi qualcosa, e ho il vago sospetto che si tratti della connessione al server SMTP, ma non riesco a trovare il comando, il metodo, la proprietà o il vattelapesca cosa mi permetta di dirgli di farlo.
Grazie in anticipo per l'eventuale aiuto e un saluto a tutti.