- Home
- Categorie
- Coding e Sistemistica
- Altri linguaggi per il web
- [ASP.NET] Lunarpages e invio mail
-
Io mi sono scritto questo metodo...
using System.Net.Mail; public bool Send(string from, string to, string subject, string body, MailPriority priority, string[] attachments, bool IsHTMLBody) { MailMessage msg = null; try { msg = new MailMessage(); msg.From = new MailAddress(from); msg.To.Add(to.Replace(';', ',')); msg.Subject = subject; msg.Body = body; msg.IsBodyHtml = IsHTMLBody; msg.Priority = priority; if (attachments != null) { foreach (string file in attachments) { msg.Attachments.Add(new Attachment(file)); } } SmtpClient client = new SmtpClient(_SMTP); client.UseDefaultCredentials = true; client.Send(msg); return true; } catch (Exception ex) { string message = ex.Message; while ((ex = ex.InnerException) != null) { message += " -- " + ex.Message; } //Log del messaggio d'errore... return false; } finally { if (msg != null) msg.Dispose(); } }
E' in C#, se ti serve in VB non è difficile farne la conversione...
-
Grazie!
Ma di preciso, cos'è _SMTP? L'indirizzo di un server SMTP?
Comunque provo e vediamo come va!Grazie ancora!
-
_SMTP è proprio l'indirizzo smtp con cui puoi inviare e-mail, tra l'altro il tuo codice dovrebbe dare errore proprio perchè non hai specificato questo indirizzo.
Se questo non è specificato il .net utilizza come indirizzo di default "localhost".
Ciao
-
Perfetto, provo subito a vedere se va!
Grazie!
-
Grazie mille!!
Così funziona!
Il problema che mi da probabilmente è dovuto al fatto che non ho inserito l'smtp, ma non posso inserirlo io, sono su un hosting, non posso modificare iis!Grazie ancora per la dritta!
Ciao!
-
Ma scusa il tuo provider non ti ha fornito l'indirizzo del server SMTP a cui appoggiarti per gestire le Mail?
-
Si me lo ha dato, ma il dominio è registrato con un altro, e finchè non faccio il redirect, l'smtp mail.miosito.it punterà a qualche altra cosa e non all'SMTP dell'hosting in cui sto... Per ora sto solo facendo qualche test per assicurarmi che funziona, prima di passare tutto li!
-
@artcava said:
Io mi sono scritto questo metodo...
> using System.Net.Mail; public bool Send(string from, string to, string subject, string body, MailPriority priority, string[] attachments, bool IsHTMLBody) { MailMessage msg = null; try { msg = new MailMessage(); msg.From = new MailAddress(from); msg.To.Add(to.Replace(';', ',')); msg.Subject = subject; msg.Body = body; msg.IsBodyHtml = IsHTMLBody; msg.Priority = priority; if (attachments != null) { foreach (string file in attachments) { msg.Attachments.Add(new Attachment(file)); } } SmtpClient client = new SmtpClient(_SMTP); client.UseDefaultCredentials = true; client.Send(msg); return true; } catch (Exception ex) { string message = ex.Message; while ((ex = ex.InnerException) != null) { message += " -- " + ex.Message; } //Log del messaggio d'errore... return false; } finally { if (msg != null) msg.Dispose(); } } >``` E' in C#, se ti serve in VB non è difficile farne la conversione... :ciauz: Ciao a tutti !:fumato: :ciauz: Questo è il mio primo post in questo forum ! Vorrei porre una domanda al creatore di qurl metodo: Intanto incomincio col dire che non uso da tanto il c# quindi tante cose non le capisco ancora, la mia domanta e: ho provato ad inserire in un programma quel metodo e nauralmente a inserire anche il server stmp, pero non riesco a farla funzionare, non è che saresti cosi gentile da farmi un esempio pratico, perche è da tempo che sto sercando di inviare email in c# ma non ci sono mai riuscito ! :bho: O al limite se mi puoi indicare un sito dove scaricare un esempio ! Io uso Visual Studio C# 2005 pro ! Grazie in anticipo !
-
Che errore hai? Che server hai utilizzato?
-
Ciao, grazie per la rispasta imediata !:D
ti posto il cadice completo :using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.Net.Mail; namespace WindowsApplication1 { publicpartialclassForm1 : Form { public Form1() { InitializeComponent(); } publicbool Send(string from, string to, string subject, string body, MailPriority priority, string[] attachments, bool IsHTMLBody) { MailMessage msg = null; try { msg = newMailMessage(); msg.From = newMailAddress(from); msg.To.Add(to.Replace(';', ',')); msg.Subject = subject; msg.Body = body; msg.IsBodyHtml = IsHTMLBody; msg.Priority = priority; if (attachments != null) { foreach (string file in attachments) { msg.Attachments.Add(newAttachment(file)); } } SmtpClient client = newSmtpClient("mail.libero.it"); client.UseDefaultCredentials = true; client.Send(msg); returntrue; } catch (Exception ex) { string message = ex.Message; while ((ex = ex.InnerException) != null) { message += " -- " + ex.Message; } //Log del messaggio d'errore... returnfalse; } finally { if (msg != null) msg.Dispose(); } } privatevoid button1_Click(object sender, EventArgs e) { Send(string [email protected], string [email protected], string subject, string body, MailPriority priority, string[] attachments, bool IsHTMLBody); } } }
gli errori sono :
------ Inizio generazione: Progetto: WindowsApplication1, Configurazione: Debug Any CPU ------ C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Csc.exe /noconfig /nowarn:1701,1702 /errorreport:prompt /warn:4 /define:DEBUG;TRACE /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Data.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Deployment.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Drawing.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Web.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Windows.Forms.dll /reference:C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\System.Xml.dll /debug+ /debug:full /optimize- /out:obj\Debug\WindowsApplication1.exe /resource:obj\Debug\WindowsApplication1.Form1.resources /resource:obj\Debug\WindowsApplication1.Properties.Resources.resources /target:winexe Form1.cs Form1.Designer.cs Program.cs Properties\AssemblyInfo.cs Properties\Resources.Designer.cs Properties\Settings.Designer.cs C:\Documents and Settings\The_King\Desktop\WindowsApplication1\WindowsApplication1\Form1.cs(64,22): errore CS1525: 'string' è un termine non valido nell'espressione C:\Documents and Settings\The_King\Desktop\WindowsApplication1\WindowsApplication1\Form1.cs(64,30): errore CS1026: È previsto il segno ) C:\Documents and Settings\The_King\Desktop\WindowsApplication1\WindowsApplication1\Form1.cs(64,40): errore CS1002: È previsto un punto e virgola (;) C:\Documents and Settings\The_King\Desktop\WindowsApplication1\WindowsApplication1\Form1.cs(64,40): errore CS1525: ',' è un termine non valido nell'espressione C:\Documents and Settings\The_King\Desktop\WindowsApplication1\WindowsApplication1\Form1.cs(64,42): errore CS1002: È previsto un punto e virgola (;) C:\Documents and Settings\The_King\Desktop\WindowsApplication1\WindowsApplication1\Form1.cs(64,57): errore CS1002: È previsto un punto e virgola (;) C:\Documents and Settings\The_King\Desktop\WindowsApplication1\WindowsApplication1\Form1.cs(64,67): errore CS1002: È previsto un punto e virgola (;) C:\Documents and Settings\The_King\Desktop\WindowsApplication1\WindowsApplication1\Form1.cs(64,67): errore CS1525: ',' è un termine non valido nell'espressione C:\Documents and Settings\The_King\Desktop\WindowsApplication1\WindowsApplication1\Form1.cs(64,69): errore CS1002: È previsto un punto e virgola (;) C:\Documents and Settings\The_King\Desktop\WindowsApplication1\WindowsApplication1\Form1.cs(64,85): errore CS1041: È previsto un identificatore, 'string' è una parola chiave C:\Documents and Settings\The_King\Desktop\WindowsApplication1\WindowsApplication1\Form1.cs(64,111): errore CS1044: Impossibile utilizzare più di un tipo nelle istruzioni for, using, fixed e nelle dichiarazioni C:\Documents and Settings\The_King\Desktop\WindowsApplication1\WindowsApplication1\Form1.cs(64,121): errore CS1041: È previsto un identificatore, 'string' è una parola chiave C:\Documents and Settings\The_King\Desktop\WindowsApplication1\WindowsApplication1\Form1.cs(64,143): errore CS1041: È previsto un identificatore, 'bool' è una parola chiave C:\Documents and Settings\The_King\Desktop\WindowsApplication1\WindowsApplication1\Form1.cs(64,158): errore CS1002: È previsto un punto e virgola (;) C:\Documents and Settings\The_King\Desktop\WindowsApplication1\WindowsApplication1\Form1.cs(64,158): errore CS1525: ')' è un termine non valido nell'espressione Compilazione completata: 15 errori, 0 avvisi ========== Generazione: 0 completate o aggiornate, 1 non riuscite, 0 ignorate ==========
Misà che ho sbagliato in molti punti ! :bho:
-
Senza offesa, ma credo che prima sarebbe il caso di legere un manuale di C#.
L'erore te lo da quiprivatevoid button1_Click(object sender, EventArgs e)
{
Send(string [email][email protected][/email], string [email][email protected][/email], string subject, string body, MailPriority priority, string[] attachments, bool IsHTMLBody);
}Dovrebbe essere qualcosa del tipo
privatevoid button1_Click(object sender, EventArgs e)
{
Send("[email protected]", "[email protected]", "", "", MailPriority.something, new string[10], true);
}Al metodo send devi passargli i parametr, non ci puoi riscrivere string!!
-
Si scusami tanto sono proprio uno stupido !
Ho sbagliato una cosa che sapevo, tempo fà usavo il c++ quindi i metodi (o funzioni) le so, solo che oggi veramente non sò cos'ho !
Comunque adessa che ho sistemato i parametri me de questi errori :Errore 1 'System.Net.Mail.MailPriority' non contiene una definizione per 'something' C:\Documents and Settings\The_King\Desktop\WindowsApplication1\WindowsApplication1\Form1.cs 64
Scusami ancora !
E grazie per l'aiuto !
-
Beh io ho scritto MailPriotiy.something perchè non sapevo che c'è dentro MailPriority, che è un'enumeration (ci sono anche in c+++). Comunque prova con MailPriority.Normal, oppure vedi cosa ti dice intellisense....
-
Ho cambiato in MailPriority.Normal ed ora compila il tutto !
Una volta eseguita però schiaccio il pulsante invia ed non da errori ma se controllo la email non arriva ! :bho:
-
Credo che libero non ti permette di inviare mail se non hai la connessione di libero, prova altro, che so tiscali o alice...
-
Ciao, ne ho provato una valanga. ho inserito perfino una textbox per cambiarle velocemente mentre è in esecuzzione !
Mi sembra strano che nemmeno 1 vada ho trovato questo :http://www.freepops.org/it/smtplist.php
forse può essere utile a qualcuno !
-
Non so, se la mail è giusta dovrebbe andare... Hai scritto qualcosa in subject e body? Da qualche eccezione?
-
Si ho scritto una parola sia in subject che in body ! :bho:
Cosa intendi con eccezine ?Errori non ne dà nemmeno 1 !
Ciao
Grazie
-
Eccezioni sono errori. Allora mi spiace ma non so da cosa possa dipendere, io ho provato e va. Non so se va solo su web e non da programma. Sicuro che il firewall o roba del genere non bloccano il collegamento del tuo programma?
-
Se hai l'smtp in locale potresti provarlo da li...
Difficilmente gli hosting gratuiti ti faranno spedire mail.
Spesso anche quelli a pagamento ti fissano i limiti.