How can I send email with ASP?

Posted on 2001-06-08
Last Modified: 2012-08-13
How can I send email with ASP?
The code listed below gives me an error like this:

Error Type:
Server object, ASP 0177 (0x800401F3)
Invalid ProgID. For additional information specific to this message please visit the Microsoft Online Support site located at:

I have installed a Virtual SMTP server on my IIS server, I have access to a real linux SMTP server, which is not on my server machine, please help me guys?!
Set Mail = Server.CreateObject("Persits.MailSender")
Mail.Host = "" ' Specify a valid SMTP server
Mail.From = "" ' Specify sender's address
Mail.FromName = "VeryHotCakes Sales" ' Specify sender's name

Mail.AddAddress "", "Andrew Johnson, Jr."
Mail.AddAddress "" ' Name is optional
Mail.AddReplyTo ""
Mail.AddAttachment "c:\images\cakes.gif"

Mail.Subject = "Thanks for ordering our hot cakes!"
Mail.Body = "Dear Sir:" & Chr(13) & Chr(10) & _
    "Thank you for your business."

On Error Resume Next
If Err <> 0 Then
  Response.Write "Error encountered: " & Err.Description
End If
Question by:lentzi
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
LVL 15

Expert Comment

ID: 6167995

Its pretty straight forward... do the following:


set oMail = server.createobject("CDONTS.NewMail")

oMail.from = "" = ""
oMail.subject = "The subject line"
oMail.Body = "The body of the email"



Expert Comment

ID: 6168006
liebrands's solution required that you have an SMTP server setup inside of IIS - this is not a band thing, it's just one alternative.

i prefer to use JMail from Dimac. - it's a free email component that i find easier to use than CDONTS, and more powerful as well.

that's just my opinion. alot of people use CDO and CDONTS - it works great. i just prefer JMail.
LVL 20

Accepted Solution

Silvers5 earned 100 total points
ID: 6168140
Comment out the on error resume next to see the error, basically I guess you should give the iusr read permission over the gif file.. check 


How do I send e-mail from ASP?

There are several components that enable you to do this. You may already have one, if you have an SMTP server installed alongside IIS - it's called CDONTS. Here is the documentation and an article for CDONTS: 
There are also several other components available (if I missed any, let us know)
    Genusa's AspMail 
    Dundas Mailer 
    w3 Jmail 
    HTMLMailer / HTMLMailerPlus 
    Mabry Mail 
    AB Active X Mailer 

How do I send e-mail with CDONTS?

To send an e-mail with Active Server Pages requires some kind of component. There are many third party components available (see bottom of page), but one of the most readily available is the free Microsoft mail component CDONTS, which ships with the Option Pack for WinNT 4.0.
Now, once you stop trying to comprehend it's name (I know I can't), it is quite a simple mail program to use once you set it up.
CDO works by using the SMTP service in IIS, unless Exchange is installed, then it will just use Exchange's SMTP system. Before continuing, make sure you have your SMTP service properly set up. You can check by using the Microsoft Management Consol (MMC), or you can look to see if CDONTS.DLL is in your system32 directory.
To send e-mail from ASP, all you have to do is define the object and use the ".send" function.
    Set MailObj = Server.CreateObject("CDONTS.NewMail")
    MailObj.Send "", "", "My Subject", "My Text"
Wasn't that easy?
Sending an Attachment
Another very commonly used function of CDO is to send attachments with an e-mail.
    Set MailObject = Server.CreateObject("CDONTS.NewMail")
    MailObject.Subject="Subject Text Here"
    MailObject.Body="Body Text Here"
    MailObject.AttachFile att_file,f_name
Along with CDO, there are many third party components that can also be used for sending e-mail. Many of them have more features than CDO. You might want to have a look at: 
If you get "Permission Denied" errors, see the following KB article: 

LVL 18

Expert Comment

ID: 6169410
If you are running IIS5 on W2K you don't even need an SMTP server, just the SMTP Service...

Expert Comment

ID: 6176109
hi lentzi,

i just want to make sure... have you registered the persits mail component or dll on your web server? this is achieved by running windows' regsvr32 and passing to it as a parameter the absolute pathname of the dll. if yes, try rebooting your server if you also haven't done this.

anyway, your invalid progid error just says that our asp engine could not find the persits.mailsender programmatic id in the registry.

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

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

I have helped a lot of people on EE with their coding sources and have enjoyed near about every minute of it. Sometimes it can get a little tedious but it is always a challenge and the one thing that I always say is:   The Exchange of informatio…
This demonstration started out as a follow up to some recently posted questions on the subject of logging in: and…
In this video, viewers will be given step by step instructions on adjusting mouse, pointer and cursor visibility in Microsoft Windows 10. The video seeks to educate those who are struggling with the new Windows 10 Graphical User Interface. Change Cu…
In this video, viewers are given an introduction to using the Windows 10 Snipping Tool, how to quickly locate it when it's needed and also how make it always available with a single click of a mouse button, by pinning it to the Desktop Task Bar. Int…

717 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