Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

System.Web.Mail class - please explain...

Posted on 2007-03-28
4
Medium Priority
?
204 Views
Last Modified: 2010-04-16
Ok i am having a few issues with some STMP code we have in production. I have narrowed these issues down to (among other things) McAfee...

Anywho..... that is not what i am posting about...

As i am testing, when i disable McAfee and directly connect to the exchange server like so:

--------------------------------------------------------------------------------------------------------------------------
public static void SendMail(string from, string recipients, string subject, string body)
{
MailMessage mail = new MailMessage();
mail.To = recipients;
mail.From = from;
mail.Subject = subject;
mail.Body = body;
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", "username");
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", "password"); SmtpMail.SmtpServer = "XX.XX.XX.XXX";
SmtpMail.Send(mail);
}
--------------------------------------------------------------------------------------------------------------------------

... my email gets set and all is good...

My issue is that most of the mail code in production do NOT use this class and instead (i guess) uses default setting. Here is the code in production:

--------------------------------------------------------------------------------------------------------------------------
MailMessage mail = new MailMessage();
mail.To = "you@you.com";
mail.From = "me@me.com";
mail.Subject = "Mail Subject"
mail.Body = "Mail body"
SmtpMail.Send(mail);
--------------------------------------------------------------------------------------------------------------------------

This i assume uses the default SMTp server setup on the local web server that it is running from... Right?

If that is the case then why is it that when i stop the IIS SMTP server this code still sends out mail... What SMTP server is it using to send the mail if the local is disabled?

To clarify, what i need to knwo is what is the default for the mail class when no SMTP server is specified.

:: Nugs ::
0
Comment
Question by:Nugs
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
4 Comments
 
LVL 5

Accepted Solution

by:
volking earned 1500 total points
ID: 18810769
I believe Active Directory keeps an SMTP routing stack. If the top server dies (or goes away) Active directory will return the next SMTP Server in the stack. Actually, I'm not sure how this works, but you may want to begin looking at Active Directory.
0
 
LVL 2

Author Comment

by:Nugs
ID: 18810821
This makes sense as i i have old legacy code on the webserver that is NOT specifying a SMTP server and has (supposibly) worked in the past... What is boggling me is that there is no local SMTP server setup on the web server - by design. I can not see how this old code ever worked without one there or directly specifying the Exchange server in the code.

:: Nugs ::
0
 
LVL 2

Author Comment

by:Nugs
ID: 18810847
Oh i was just informed that the web server is not even on the same subnet as our network (it has an external IP obviousley) so it can not be finding the Esxchange server via AD...

:: Nugs ::
0
 
LVL 2

Author Comment

by:Nugs
ID: 18812415
It was using my localhost SMTp, apparently stoping the SMTP server in IIS does not stop the SMTP service. Stopping the service stoped outbound mail.

Interesting about the AD stuff thought, thanks for your input.

:: Nugs ::
0

Featured Post

Learn Veeam advantages over legacy backup

Every day, more and more legacy backup customers switch to Veeam. Technologies designed for the client-server era cannot restore any IT service running in the hybrid cloud within seconds. Learn top Veeam advantages over legacy backup and get Veeam for the price of your renewal

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

It was really hard time for me to get the understanding of Delegates in C#. I went through many websites and articles but I found them very clumsy. After going through those sites, I noted down the points in a easy way so here I am sharing that unde…
This article shows how to deploy dynamic backgrounds to computers depending on the aspect ratio of display
Sometimes it takes a new vantage point, apart from our everyday security practices, to truly see our Active Directory (AD) vulnerabilities. We get used to implementing the same techniques and checking the same areas for a breach. This pattern can re…
How to fix incompatible JVM issue while installing Eclipse While installing Eclipse in windows, got one error like above and unable to proceed with the installation. This video describes how to successfully install Eclipse. How to solve incompa…

722 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question