Chiedo scusa se posto ancora messaggi sull'oggetto SmtpMail, ma ho un bisogno urgente di risolvere questo problema:
Ricapitoliamo tutto!
Possiedo un webform, in cui è presente il controllo HtmlInput dal quale l'utente sceglie un file e premendo il tasto "invia" invia un email con allegato il file da lui scelto a un determinato indirizzo di posta elettronica!
A livello HTML il tag di apertura del form l'ho così impostato:
[CODE]
<form id="Form1" method="post" enctype="multipart/form-data" runat="server">
[*CODE]
Ho così impostato il tag, in quanto sulla documentazione di Visual Studio ho letto (testualmente):
Inoltre, il controllo HtmlInputFile, l'ho dichiarato in questo modo:Utilizzare il controllo server HtmlInputFile per gestire il caricamento di file binari o di testo da un browser client in un server. Il caricamento dei file è attivo in Microsoft Internet Explorer versione 3.02 o successive.
Nota Questa classe funziona solo se la proprietà Enctype di un controllo HtmlForm è impostata su multipart/form-data.
Nell'evento click del bottone, infine, ho inserito questo codice:codice:<INPUT id="txtArticolo" type="file" runat="server">
Adesso, se carico la pagina sul server web di Aruba, nel momento in cui premo il tasto invia, viene visualizzata quest'errore:codice:Dim strTesto As String Dim messaggio As MailMessage 'Scrive il testo del messaggio If Not IsNothing(txtArticolo.PostedFile) Then Try Dim allegato = New MailAttachment(txtArticolo.Value) strTesto = "" & strUtente & " ha inviato un articolo" messaggio = New MailMessage() messaggio.Attachments.Add(allegato) messaggio.BodyFormat = MailFormat.Html messaggio.From = strMail messaggio.To = "yyyyyy@xxxxxx" messaggio.Subject = "ARTICOLO" messaggio.Body = strTesto SmtpMail.SmtpServer = "smtp.aruba.it" SmtpMail.Send(messaggio) Catch ex As Exception lblMessaggio.ForeColor = Color.Blue lblMessaggio.Text = "ERRORE DEL SERVER: " & ex.Message & " " lblMessaggio.Text &= "OGGETTO: " & ex.Source lblMessaggio.Visible = True End Try Else lblMessaggio.Text = "Specificare l'articolo da allegare!" lblMessaggio.Visible = True End If
ERRORE DEL SERVER: Invalid mail attachment 'C:\prova.txt'.
OGGETTO: System.Web
Se invece COMMENTO le righe di codice che allegano il file alla mail, il tutto funziona alla meraviglia!
Perché l'allegato mi provoca l'errore?
Grazie!![]()

Rispondi quotando