Mandare e-mail con autenticazione

lunedì 13 febbraio 2006 - 12.15

lordwaizard Profilo | Senior Member

Se devo inviare un email a un sendmail con la "Systems.Web.Mail" e il server mi richiede l'autenticazione io non so come impostare username e password.
E' possibile usare questa libreria con smtp che richiedono l'autenticazione?
Se si come?

Grazie in anticipo.
Davide

Brainkiller Profilo | Guru

>Se devo inviare un email a un sendmail con la "Systems.Web.Mail"
>e il server mi richiede l'autenticazione io non so come impostare
> username e password.
>Se si come?

Ciao Davide,
guarda qui:
http://support.microsoft.com/?id=555287

ciao


David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/

lordwaizard Profilo | Senior Member

Forse sbaglio qualcosa, ma quando utilizzo il codice riportato da msdn, vs.net mi dice:
"System.Web.Mail.MailMessage" non contiene una definizione per "Fields"."

La libreria che importo è
.NET
System.Web.dll

Grazie
Davide

Brainkiller Profilo | Guru

>Forse sbaglio qualcosa, ma quando utilizzo il codice riportato
>da msdn, vs.net mi dice:
>"System.Web.Mail.MailMessage" non contiene una definizione per
> "Fields"."

MailMessage msg = new MailMessage();

io se scrivo msg e premo punto mi appare correttamente anche la proprietà Fields.

Ricordati di fare un Imports System.Web.Mail se no non ti vede nessuna classe.
Ciao


David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/

lordwaizard Profilo | Senior Member

No a me non lo da.
Inserisco il codice:

using System;
using System.Web.Mail;

namespace ConsoleApplication1
{
/// <summary>
/// Descrizione di riepilogo per Class1.
/// </summary>
class Class1
{
/// <summary>
/// Il punto di ingresso principale dell'applicazione.
/// </summary>
[STAThread]
static void Main(string[] args)
{

}
}
}

namespace SMTPAuthentication
{
public class SMTPAuthenticationExample
{
public static void SendMail()
{
string smtpServer = "smtp.domain.com";
string userName = "johnDoe";
string password = "pass";
int cdoBasic = 1;
int cdoSendUsingPort = 2;
MailMessage msg = new MailMessage();
if (userName.Length > 0)
{
msg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserver", smtpServer);
msg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpserverport", 25) ;
msg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusing", cdoSendUsingPort) ;
msg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", cdoBasic);
msg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", userName);
msg.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", password);
}

msg.To = "someone@domain.com";
msg.From = "me@domain.com";
msg.Subject = "Subject";
msg.Body = "Message";
SmtpMail.SmtpServer = smtpServer;
SmtpMail.Send(msg);
}
}
}

ERRORE:
Class1.cs(36): "System.Web.Mail.MailMessage" non contiene una definizione per "Fields".


Poi scusate una domanda ma cosa servono quelle pagine web?
Le scarica e le inserisce nel programma o ogni volta che si avvia il programma lui va a chiamare il server ms?

Grazie ancora
Davide


Brainkiller Profilo | Guru

>No a me non lo da.
>Inserisco il codice:

Il codice da te postato compila perfettamente sul mio PC.

Prima cosa Aggiungi il riferimento a System.Web nella tua soluzione da Solution Explorer.
Seconda cosa usa:
using System.Web.Mail;
Dovrebbe andare.

>Poi scusate una domanda ma cosa servono quelle pagine web?
>Le scarica e le inserisce nel programma o ogni volta che si avvia
> il programma lui va a chiamare il server ms?

Non sono siti, e non viene scaricato niente.
Sono solo schemi che usa Microsoft.

Ciao

David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/

lordwaizard Profilo | Senior Member

La risorsa System.Web l'ho già inserita infatti nella riga using non mi da errori.
Cosa posso fare?

Grazie
Davide

Brainkiller Profilo | Guru

>La risorsa System.Web l'ho già inserita infatti nella riga using
> non mi da errori.
>Cosa posso fare?

Forse hai problemi altrove.
Quelle sono le operazioni da eseguire.
Se usi il Framework 1.1 deve funzionare.
Ciao


David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5