ASP Web Based Email Using Microsoft's CDONTS
||If you are reading this page then I shall assume that you already know a little bit about ASP and running ASP applications. |
The download to this tutorial has 4 working examples of Web Wiz Email Form's (CDONTS) which you can use to allow your web site visitors to send there comments or enquiries to your e-mail address or send e-mails to there own friends form your site.
CDONTS stands for 'Collaboration Data Objects for Windows NT Server'
and as the name suggest it is for NT, sorry Win9x users you don't have this component. The CDONTS component is installed when you install IIS on NT4 and Windows 2000. Although the component will run on Windows XP, Microsoft have decided to remove the component from IIS 5.1 on Windows XP, so you will have to track down a copy of the cdonts.dll and register it on the IIS web server.
To use this component to send e-mail you also need the SMTP Server that ships with IIS 4 or 5 installed on the web server. The SMTP server is usually installed by default with the standard IIS installation.
First we need to create the variables that we are going to be using in this script.
Next we need to create an instance of the 'CDONTS NewMail'
object on the server.
Set objCDOMail = Server.CreateObject("CDONTS.NewMail")
Once the 'NewMail'
object has been created on the server we can use various properties and methods of the 'NewMail'
object to build the e-mail.
First we are going to use the 'From'
property to let the recipient of the e-mail know who the e-mail is from. If you leave this property out or do not have a properly format e-mail address the e-mail will fail.
objCDOMail.From = "myE-mailHere@myDomain.com"
Now we need to place a string value representing the e-mail address of the person you want to receive the e-mail into the 'To'
property of the 'NewMail'
objCDOMail.To = "thereEmail@thereDomain.com"
The next property 'Cc'
holds the e-mail address of the people you wish to receive Carbon Copies of the e-mail.
You can place one or more recipient e-mail addresses separated by either a comma (,) or a semicolon (;). Make sure all the e-mail address are properly formatted or the e-mail will fail.
This property can be left out if you don't want any carbon copies of the e-mail sent.
objCDOMail.Cc = "myFriend1@thereDomain.com;myFriend2@anotherDomain.com"
property holds the e-mail address of the people you wish to receive Blind Copies of the e-mail. The formatting of the e-mail addresses is the same as for the 'Cc'
Again if you don't want to send any blind copies of the message you can leave this property out.
objCDOMail.Bcc = "myFriend1@thereDomain.com;myFriend2@anotherDomain.com"
In the next line we use the 'Subject'
property to set the subject of the e-mail.
objCDOMail.Subject = "Enquiry sent from my web site"
As well as sending plain text e-mail's you can also format the body of the e-mail using HTML. The default is Text but if you wish to format the e-mail using HTML then you will need to use the 'BodyFormat'
property with the integer value of '0'
for HTML or '1'
If you leave this property out the e-mail will be sent as plain text format.
objCDOMail.BodyFormat = 0
If you wish to use HTML formatting in the e-mail, as well as setting the 'BodyFormat'
property above to HTML, you will also need to set the 'MailFormat'
property to MIME. Again this property uses and integer value of '0'
for MIME and '1'
The default is text so if your e-mail is text only you can leave this property out.
objCDOMail.MailFormat = 0
The next property were covering is the 'Body'
property. This property holds the main part of the e-mail with the message you are sending.
If you have set the 'BodyFormat'
property to HTML and the 'MailFormat'
to MIME then you can use HTML to format your e-mail message. 'eg. <h2>Hello</h2><br><b>This is my e-mail in HTML format</b>'
If you want to send the e-mail as text then you can just enter text instead. 'eg. Hello This is my e-mail in Text format'
objCDOMail.Body = "<h2>Hello</h2><br><b>This is my e-mail in HTML format</b>"
property tells the mail messaging system when to schedule delivery of the e-mail.
For this property there is 3 different integer values, 0 - Low
, the e-mail will be sent during times of low system use, 1 - Normal
, the message is sent at regular delivery times, 2 - High
, the system will attempt to send the message immediately.
If this property is left out the deafault is Normal.
objCDOMail.Importance = 1
Once all the properties for the e-mail are set we can now send the e-mail using the 'Send'
Finally once the e-mail has been sent we can close the server object releasing server resources.
Set objCDOMail = Nothing
There are other methods and properties of the 'NewMail CDONTS'
object but to keep things simple I have tried to cover the most common properties needed to send an e-mail from your web site.
출처 : 닷넷 (.NET) 프로그래머 모임