SmtpServer Property

  • Thread starter Thread starter sampsons
  • Start date Start date
S

sampsons

Greetings,

I am using Web.Mail.Mailmessage
along with Web.Mail.SmtpMail.Send(MailMessage) method

Now, this sends Email using the Default SMTP server of my REMOTE HOST.

Sadly I have found that many ISP's block mail sent through this method.
I do have an SMTP server included in the Remote Hosting package,
but that SmtpServer requires authentication of outgoing mail.

If I set the SmtpServer property to my domain's SmtpServer
then the mail is never sent because it is not authenticated
with the username and password of the account I am using
as the MailMessage.To property.

Is there a way to pass the username and password of the
account used to send the message through Web.Mail.SmtpMail.SmtpServer
property??

Thanks in advance,
Severin Sampson
 
Hi Sampson,

<Quote>
this sends Email using the Default SMTP server of my REMOTE HOST
</Quote>

<PleaseNote>
The mail message can be delivered either through the SMTP mail service built
into Microsoft Windows 2000 or through an arbitrary SMTP server. Types in
the System.Web.Mail namespace can be used from ASP.NET or from any managed
application.

If the SmtpServer Property is not set, mail is by default queued on a
Windows 2000 system, ensuring that the calling program does not block
network traffic. If the SmtpServer property is set, the mail is delivered
directly to the specified server.
</PleaseNote>

You can specify which SMTP Server you would like to send your mail out to.

<Example>
Dim Message As New System.Web.Mail.MailMessage()
'Recipient's name and e-mail address
Message.To = "Your Name <[email protected]>"
'Your name and e-mail address
Message.From = "Recipient Name <[email protected]>"
Message.Body = "Test message text"
Message.Subject = "A Test"
'Your smtp server
System.Web.Mail.SmtpMail.SmtpServer = "mail.yourIntendedMailServer.com"
System.Web.Mail.SmtpMail.Send(Message)
</Example>

hth

--
William T
Chief Software Developer
Software Architect
Softwaremaker.Net Pte Ltd

+++++++++++++++++++++++++++++
 
Yes William

But, as stated in original post, my SmtpRemoteServer requires authentication
of all outgoing emails.

So I need to pass the username and password for the account used in the
MailMessage.From Property.

Severin
 
System.Web.Mail does not support authentication. you will have to use cdo
com library directly or get a third party control that does support
authentication.

if you only need 1 account you can setup the iis smtp server as a relay to
your real smtp server and use System.Web.Mail (this is what I do).

-- bruce (sqlwork.com)
 
CDOSYS supports username and password authentication, and version 1.1
of the .NET Framework added the Fields property to the MailMessage
class, which lets you set arbitrary fields of the underlying CDOSYS
object. I haven't tested it, but something like this should work:

MailMessage m = new MailMessage();
<configure message>
m.Fields["http://schemas.microsoft.com/cdo/configuration/smtpauthenticate"]=1;
m.Fields["http://schemas.microsoft.com/cdo/configuration/sendusername"]="user";
m.Fields["http://schemas.microsoft.com/cdo/configuration/sendpassword"]="pass";
SmtpMail.Send(m);

See this article for more information about CDOSYS authentication:
http://msdn.microsoft.com/library/d...guring_network_authentication_information.asp
 
Back
Top