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

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 ::
LVL 2
NugsAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

volkingCommented:
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

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
NugsAuthor Commented:
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
NugsAuthor Commented:
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
NugsAuthor Commented:
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
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
C#

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.