Solved

Emailing through asp.net

Posted on 2004-09-27
4
220 Views
Last Modified: 2012-05-05
I've written a program that sends a confirmation email after the user submits.  The code points to the email server we have and the emails were sending fine when I was testing the program on my localhost.  Now I have moved the application to the web server and it will not send an email.  I've tried sending it to several addresses to make sure, but it fails to email every time.  Here is my code:
        Dim eMail As New MailMessage
        eMail.Body = strMessage
        eMail.From = "noreply@adtrav.com"
        eMail.Subject = "Approval Needed"
        eMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1")
        eMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", "matt@adtrav.com")
        eMail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", "somepassword")
        eMail.BodyFormat = MailFormat.Html
        SmtpMail.SmtpServer = "mail.adtrav.com"
        eMail.To = "matt.jacoby@adtrav.com"      
        SmtpMail.Send(eMail)
       
        I am not familiar with the fields.add part, but I have been told that this can be given the email address and password of a valid account and it should work.  I have also tried it without those three lines and it still doesn't work.  Help!  I am giving away all the points I have left and this is very urgent!
       
0
Comment
Question by:jacobymatt
  • 2
4 Comments
 
LVL 1

Expert Comment

by:muellerfan
ID: 12164968
Are you getting an error message?  Are you sure the production server has access to the SMTP server?
0
 
LVL 6

Accepted Solution

by:
viola123 earned 40 total points
ID: 12166366
i am not sure what is happening because you didn't provide any error message.

but i suggest you checking your IIS configuration.

1. check your file system, make sure it's ntfs system

2. check c:\winnt\system32\cdosys.dll, make sure you checked all access in security tab of property window

3. in IIS, open the property window of your virtual smtp server and grant access to any other machine, which is supposed to be able to send/receive email from that machine.

cheers
viola
0
 

Author Comment

by:jacobymatt
ID: 12169299
Thanks for the help guys.  This is the error I was able to see when I ran the application from the web server.  I just got in this morning so I will check those settings but I just wanted to go ahead and post this in case it was obvious what the problem was.  

[COMException (0x80040213): The transport failed to connect to the server.
]

[TargetInvocationException: Exception has been thrown by the target of an invocation.]
   System.RuntimeType.InvokeDispMethod(String name, BindingFlags invokeAttr, Object target, Object[] args, Boolean[] byrefModifiers, Int32 culture, String[] namedParameters) +0
   System.RuntimeType.InvokeMember(String name, BindingFlags invokeAttr, Binder binder, Object target, Object[] args, ParameterModifier[] modifiers, CultureInfo culture, String[] namedParameters) +473
   System.Web.Mail.LateBoundAccessHelper.CallMethod(Object obj, String methodName, Object[] args) +58

[HttpException (0x80004005): Could not access 'CDO.Message' object.]
   System.Web.Mail.LateBoundAccessHelper.CallMethod(Object obj, String methodName, Object[] args) +113
   System.Web.Mail.CdoSysHelper.Send(MailMessage message) +1861
   System.Web.Mail.SmtpMail.Send(MailMessage message) +150
   ERC_RezApprove.form.sendEmail(String strMessage, String strApprovee, String strTA, String strApprover) in c:\inetpub\wwwroot\ERC_RezApprove\AuthForm.aspx.vb:695
   ERC_RezApprove.form.btnRequestApp_Click(Object sender, EventArgs e) in c:\inetpub\wwwroot\ERC_RezApprove\AuthForm.aspx.vb:739
   System.Web.UI.WebControls.Button.OnClick(EventArgs e) +108
   System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +57
   System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +18
   System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
   System.Web.UI.Page.ProcessRequestMain() +1292

0
 

Author Comment

by:jacobymatt
ID: 12170553
Well, thanks anyway but I figured out that I needed to inlcude my mail server in my host file because it was trying to locate it by its external ip address instead of going through our network to reach it.  But I don't really understand why it would not be able to find it by the external ip address.  If anyone has a clue it would be nice to know why the external path would be a problem.
0

Featured Post

Complete VMware vSphere® ESX(i) & Hyper-V Backup

Capture your entire system, including the host, with patented disk imaging integrated with VMware VADP / Microsoft VSS and RCT. RTOs is as low as 15 seconds with Acronis Active Restore™. You can enjoy unlimited P2V/V2V migrations from any source (even from a different hypervisor)

Question has a verified solution.

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

Just a quick little trick I learned recently.  Now that I'm using jQuery with abandon in my asp.net applications, I have grown tired of the following syntax:      (CODE) I suppose it just offends my sense of decency to put inline VBScript on a…
One of the pain points with developing AJAX, JavaScript, JQuery, and other client-side behaviors is that JavaScript doesn’t allow for cross domain request for pulling content. For example, JavaScript code on www.johnchapman.name could not pull conte…
This video shows how to quickly and easily add an email signature for all users on Exchange 2016. The resulting signature is applied on a server level by Exchange Online. The email signature template has been downloaded from: www.mail-signatures…
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…

773 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