ServerObjects LogoAspQMail

Warning: Use of this component for unsolicited e-mail (spamming) is strictly prohibited and will immediately result in cancellation of services.

AspMail is used on more ASP installations than any other commercial or free product. Used on 100,000's of Web sites around the world, this component allows you to send SMTP mail directly from a Web page.

AspMail includes support for

  • SMTP (sending) Messages
  • Multiple File Attachments supporting MIME and UUencoding
  • PGP
  • US ASCII and ISO-8859-1 character sets
  • Priority, Urgent and Custom mail headers
  • MS Mail (including Exchange) priority headers
  • Reply-To, ConfirmReading and ReturnReceipt headers
  • Custom ContentType headers
  • Word Wrap (customizable)
  • Redundant SMTP servers
  • Multiple concurrent users
  • Blind Carbon Copy (BBC)

AspQMail works just like AspMail except that messages are optionally queued up for delivery using the AspMail component. A companion NT service is notified when messages are added to the queue and attempts delivery while your ASP script is freed from the delay of delivering the message. AspQMail and AspMail provide a unified interface for SMTP messaging. AspQMail allows you to use the queuing mechanism for none, some or all messages.


AspQMail Tutorial

Availability, Technical Support and Licensing
Does 1st NT offer a SMTP server?
About AspMail
About AspQMail
Simple Mail Example
Form Handling
Generic Form Handling
Setting Mail Priority
How to Use the DateTime Property
Notes about creating the Mailer Object
Multiple Host Support
PGP Support
Questions about AspQMail
AspQMail Properties
AspQMail Methods


Availability, Technical Support and Licensing

AspQMail is made by ServerObjects Inc. and is fully licensed by 1st NT Internet Publishing Corp. for use on its servers. This component is available to our customers as a standard feature with all plans at no additional cost. Paid scripting support can be obtained by the following sources listed by Server Objects Inc. Inclusion in this listing does not constitute an endorsement or recommendation on the part of 1st NT Internet or ServerObjects Inc. These listings represent responses to requests for information for listings from individuals. We encourage you to evaluate these resources yourself to determine if they can fulfill your development needs. 1st NT or ServerObjects Inc may not be held liable for any loss or damage whatsoever resulting from use or misuse of this list. Consultants are added to this list in the order that information is received. 1st NT Publishing Corp. does not offer scripting support.

Does 1st NT offer a SMTP server?

Yes. The SMTP server gemini.1stnation.com is offered by 1st NT exclusively for our customers for the sole purpose of sending email from web sites hosted by us. Please be advised that this server cannot be utilized by external mail clients for sending mail.

About AspMail

AspMail allows you to send mail using the standard SMTP protocol from any program that can use ActiveX/OLE components (such as Active Server Pages scripts). Features include:

  1. SMTP (sending) Messages
  2. Multiple File Attachments
  3. File attachments support MIME and UUencoding
  4. US ASCII and ISO-8859-1 character sets
  5. PGP
  6. Subject line encoding for 8bit message subjects
  7. Redundant SMTP servers (If the primary SMTP server is down, the secondary server is used)
  8. Special Header Support (Standard X-Priority headers, MS Mail (including Exchange) priority headers, Urgent header, ConfirmReading and ReturnReceipt Headers)
  9. Multiple concurrent users

About AspQMail

AspQMail builds on the success of the AspMail product and provides all the features that AspMail provides and in addition:

  1. Message queuing which allows the message to be sent without any delays to the Web client.
  2. An NT Service that sends queued messages

AspQMail uses the AspMail component to send messages to the queue. To use the component you use it the same way you normally would except that you set one additional property.


                      

Mailer.QMessage = true

If QMessage is true then the message will be sent to the Que. If it is false (the default) it will be sent normally via SMTP (normal ASPMail mode without queuing). When set to false, the Web client is forced to wait until the SMTP mail transaction is completed adding delays. Setting this property to true alleviates that problem and, additionally, offers the benefit of re-trying the mail message in case of unsuccessful initial delivery.

Simple Mail Example

Using the component is as simple as

  1. Creating the object
  2. Setting a few properties
  3. Calling the SendMail method

The following code demonstrates how to use AspMail from VBScript. Save the code as a .asp file and make sure you place it in a directory in your site capable of executing ASP.
In this example Joe from Joe's Widgets wishes to send an email to John Smith. 1st NT's SMTP server is located at gemini.1stnation.com (the user-definable entries are shown in bold letters):


<html>
<head>
<title>ASPQMail Example</title>
</head>
<body>

<%
Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
Mailer.QMessage = true
Mailer.FromName   = "Joe's Widgets Corp."
Mailer.FromAddress= "Joe@somehost.com"
Mailer.RemoteHost = "gemini.1stnation.com"
Mailer.AddRecipient "John Smith", "jsmith@anotherhostname.com"
Mailer.Subject    = "Great SMTP Product!"
Mailer.BodyText   = "Dear Stephen" & "Good choice!"
if Mailer.SendMail then
  Response.Write "Mail sent..."
else
  Response.Write "Mail send failure. Error was " & Mailer.Response
end if
%>

</body>
</html>



                      

By testing the result of the SendMail method we can determine if the mailing process was successful or not.

Form Handling

All or partial input for a message may come from a form. For example, a form posted to the server with a request method of GET (i.e. <form action="/scripts/AspMail.asp" method=get>) may provide the message recipient's email address, subject and message text as follows:


                      


Mailer.AddRecipient Request.QueryString("ToName"), Request.QueryString("ToAddress")
Mailer.Subject   = Request.QueryString("Subject")
Mailer.BodyText  = Request.QueryString("MsgBody")

The form may also use the POST method (i.e. <form action="/scripts/AspMail.asp" method=post>) in which case the code would look as follows:


                      


Mailer.AddRecipient Request.Form("ToName"), Request.Form("ToAddress")
Mailer.Subject   = Request.Form ("Subject")
Mailer.BodyText  = Request.Form ("MsgBody")

You can use any mixture of static and dynamic data in setting the components properties as dictated by your needs. For example, you may wish to send the mail to a single user. In this case you could modify the code to look something like this:


                      


Mailer.AddRecipient "John Smith", "jsmith@alocalhost.com"
Mailer.Subject   = Request.QueryString("Subject")
Mailer.BodyText  = Request.QueryString("MsgBody")

Generic Form Handling

In some cases users may wish to use a number of different forms to send email with the same block of code. ASP allows you to loop through each QueryString or Form variable and append each one to string variable which is then assigned to the BodyText property. Please note: AspMail cannot control the order that these variables are returned in. This is a function of ASP, not AspMail. ASP takes the form variables and creates the appropriate Request collection (QueryString or Form) and stores the data in an order that AspMail cannot change. If you use this method you must accept ASP's order.


                      


strMsgHeader = "Form information follows" & vbCrLf
for each qryItem in Request.QueryString
   strMsgInfo = strMsgInfo & qryItem & " - " & request.querystring(qryItem) & vbCrLf
next
strMsgFooter = vbCrLf & "End of form information"
Mailer.BodyText = strMsgHeader & strMsgInfo & strMsgFooter

Setting Mail Priority

There are a couple of headers that can be modified to set message priority.

The Priority property sets the message priority on a scale of 1 to 5. A priority of 1 means HIGH. A priority of 3 means NORMAL and a priority of 5 means LOW. In addition to this you can also set the Urgent property if the message status is urgent. The Urgent property is a true/false property.

How to Use the DateTime Property

The component creates a Date/Time value for the message based on the calculated GMT time. The DateTime property was added to allow users to set a custom date/time timezone. The following code demonstrates how to set the DateTime to US Central Standard Time. By slightly altering the code you can adjust this to work for your own timezone.

function DayName (intDay)
  select case intDay
    case 1
      DayName = "Sun"
    case 2
      DayName = "Mon"
    case 3
      DayName = "Tue"
    case 4
      DayName = "Wed"
    case 5
      DayName = "Thu"
    case 6
      DayName = "Fri"
    case 7
      DayName = "Sat"
  end select
end function

function MonthName (intMonth)
  select case intMonth
    case 1
      MonthName = "Jan"
    case 2
      MonthName = "Feb"
    case 3
      MonthName = "Mar"
    case 4
      MonthName = "Apr"
    case 5
      MonthName = "May"
    case 6
      MonthName = "Jun"
    case 7
      MonthName = "Jul"
    case 8
      MonthName = "Aug"
    case 9
      MonthName = "Sep"
    case 10
      MonthName = "Oct"
    case 11
      MonthName = "Nov"
    case 12
      MonthName = "Dec"
  end select
end function


[set other Mailer properties]
Mailer.DateTime = DayName (WeekDay(Date)) & ", " & Day(Date) & " " & MonthName(Month(Date)) & " " &  Year(Date) & " " & FormatDateTime(Now, 4) & " -0600 (CST)"
Mailer.SendMail


Notes About Creating the Mailer Object

You can create the mailer object at two different points in time:

  • Immediately before sending an email
  • At the session scope and saved as a session object

You will have to decide when and where it is appropriate to create the object based on your particular application. If you aren't sure which way to create the object reference, or for typical usage, you should create the object immediately before sending your email. Your code would look like this:


                      

Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
... [Set properties]
if Mailer.SendMail then ...

Creating these local references, as demonstrated above, allow you to use the object on multiple application threads at the same time.

To create an object reference at the session level, your code might look something like this:


                      

if Not IsObject (session("Mailer")) then
  Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
  Set session("Mailer") = Mailer
else
  Response.write "Cached session object reference being used<p>"
  Set Mailer = session("Mailer")
end if

Multiple Host Support

AspMail provides one host property to set up remote SMTP server addresses. The RemoteHost property should be set to your primary and secondary server's address seperated by semicolons. In the event that the primary server is down, AspMail will attempt to use the secondary server. For example,


                      

Mailer.RemoteHost = "mailhost.localisp.com;mailhost.anotherisp.com"

PGP Support

AspMail now supports PGP. See the pgpmail.asp script for an example of usage. ServerObjects Inc. is not responsible for PGP support. If you have questions about PGP please contact the developers of PGP.

Questions about ASPQMail

I'm having problems with AspQMail not handling my messages. What should I check?

The most common reason for AspQMail failures is the CrLf issue as noted in the AspQMail docs. You must use a valid CrLf to force a carriage return/new line in your messages --assuming you are doing some sort of pre-formatting of your messages. With VBScript you can use the predefined constant VBCrLf. If you use JScript you can use \r\n. You cannot use a single Cr or a single Lf to force a new line in the message. AspQMail will not accept anything but a full CrLf sequence for a new line.

How do I determine a cause of mail failure?

Note about FromAddress: You must specify a value for the FromAddress property. Mail failure will occur without a FromAddress.

If the component can determine why the SendMail method failed, that information will be stored in the Response property. So, for example, to print that information to the clients browser you could add the following code:


                              

if not Mailer.SendMail then
  if Mailer.Response <> ''" then
   strError = Mailer.Response
  else
   strError = "Unknown"
  end if
  Response.Write "Mail failure occured. Reason: " & strError
end if

Another fairly common problem is when a user reports that a specific feature is not working. For example BCC's may seem to never reach their destination. A valuable debugging tool is available with the SMTPLog feature. Assign a valid filename to this property and the contents of the SMTP transaction that occurs during a SendMail call will be recorded to this file. If you find that the SMTP transaction occurs without error then you should check elsewhere for the cause of mail delivery failure. Invariably the user finds that the BCC address was invalid or that the address was misconfigured. The SMTPLog feature allows you to verify if the transactions are complete and valid before pursuing other avenues in determining the cause of failure.

Checking the Mailer.Response property returns

"File Access Denied"

or

"Cannot create file"

or

"I have a TMP/TEMP var but it still isn't working"

What's wrong?

You probably don't have a TMP or TEMP path set up, or if you do, the IIS User (or any users authenticating under IIS) don't have read/write access to the this directory.

  1. Make sure the directory exists.
  2. Make sure the TMP or TEMP variable exists in your NT/Win95 environment. Under NT this must be a system environment variable, not a user environment variable. If TShoot (see our tech support page) doesn't show the var it isn't a system var. It must be a system var.
  3. Make sure all users which need access to the component (the anonymous IIS user and any other users which authenticate under IIS) have read/write access to this path.

How to determine where your TMP/TEMP dir points to

AspMail versions 2.5.8 and higher have a method called GetTempPath. To display where your TMP path is set to place the following code in an ASP script and run it.

Set Mailer = Server.CreateObject("SMTPsvg.Mailer")
Response.Write Mailer.GetTempPath

Your Win32 OS is designed to find your temporary path in the following manner:

  1. Check for TMP.
  2. If it does not exist, check for TEMP.
  3. If it does not exist use the current directory. ASP tends to use the \WinNT directory in this case.

What would cause an "Operation timed out error"?

or

"AspMail has been working great but suddenly I'm getting an 'Operation timed out' error.

Reasons for operation timed out include:

  1. SMTP server is down, overloaded or simply not responding
  2. Firewall blocking port 25 between AspMail and SMTP server
  3. Packet filtering blocking port 25 between AspMail and SMTP server
  4. IP route is down
  5. Your Winsock configured DNS server is down

To check using another method run

telnet [smtp hostname] 25

from the IIS server where AspMail is installed. If telnet can see the
SMTP server, then AspMail can see the server also.

I'm adding attachments but they aren't getting added to the actual mailing. What's wrong?

  1. The path specified is not valid.
  2. The user the component is running under, typically the anonymous IIS user, does not have rights to open the file. The anon IIS user, by default, cannot read from networked drives so a path such as \\foobar\files\myfile.zip is not valid.
  3. The file is open by another process that's denying reads to the file.

"AddCC or AddBCC doesn't work" - is this a bug with AspMail?

or

"I'm adding multiple recipients but only the first one is getting delivered. What's wrong with AspMail?"

AddRecipient, AddCC and AddBCC work just as they should. The problem is not with AspMail. It is likely that your SMTP server is rejecting "foreign addresses" (see "no relay" question below).

To test whether AspMail is functioning properly use the SMTPLog property to capture an SMTP session with multiple recipients. All the recipients you send to should appear in the log as the SMTP envelope is sent. If they all appear then the problem is with your SMTP server or an SMTP server down the stream (or your addresses are invalid).

The syntax

Mailer.AddRecipient = "name", "name@address.net"

and

Mailer.AddRecipient =  "name@address.net"

both return a VBScript error. What's wrong?

First off, remove the = sign. AddRecipient sounds like and is actually a method, not a property. Also AddRecipient takes two parameters. See AddRecipient in the methods listing for details.

What's the syntax for adding multiple recipients?

Call AddRecipient, AddCC or AddBCC for each recipient. There's no other way to add multiple recipients.

Mailer.AddRecipient "name1", "address1"
Mailer.AddRecipient "name2", "address2"
Mailer.AddBCC "name3", "address3"

How do I define the sensitivity of the message?

Outlook allows you to define a message sensitivity. You can do this using as mail by adding the sensitivity header along with the proper text for the sensitivity header.

For example:

Mailer.AddExtraHeader "Sensitivity: Company-Confidential"

How do I create a line-break in a message?

Under VBScript you can use the predefined constant VbCrLf. Simply using a Chr(13) or a Chr(10) will not work --you must use both -- the VBCrLf defined constant is the preferred method. A Carriage-return and line-feed character are required to create a new line in the message. See the sample scripts for examples.

How do I set the username and password to send mail?

Standard SMTP does not use a uid/pwd so it isn't needed. The protocol used to retrieve mail, POP3 typically requires a uid/pwd but AspMail doesn't use POP3 since it is a send mail component.

What versions of PGP does AspMail support?

AspMail can support any encryption program that uses command-line parameters. Using PGPPath and PGPParams you can specify input, output and processing options. The current version of PGP (5.0) does not support command-line parameters but the commercial PGP 4.x does as well as the freeware (non-commercial use) PGP 2.6.2.

My mail to AOL is bouncing. What am I doing wrong?

AOL will not accept anything other than a true address in the "From:" heading. Just about every mail system out there, except AOL and Compuserve, will accept the "No Mail Address" as the "From:" header. (thanks to R.S for this info).

Does AspMail support 8bit messages?

or

"does AspMail support Japanese character set"

AspMail supports any 8 bit characters but please note:

  1. Message bodies may be 8bit.
  2. Some SMTP servers drop the 8th bit in message headers including Subject lines.
  3. You can encode message subjects using a new method named EncodeHeader. See the methods listing for details. Some character sets don't work properly using this method, some do. We don't have any support for character sets that don't work properly using this encoding.

Can I repeatedly assign values to the BodyText property? and "The message text keeps growing with each email I send."

Yes, the text will be appended to the message. Use ClearBodyText if you need to clear the message text.

Can AspMail be used to retrieve files off the client computer?

AspMail is a server-side component. Retrieving files from the client computer requires a client-side component that has access to the client's local harddisk or a browser that supports file uploads in addition to a server side component/extension that can accept those files. AspMail does not support this function.

How do I get Exchange to route Internet email to the Net?

Exchange uses a service called the Internet Mail Connector (IMC) to allow it to act as an SMTP server and transmit and receive mail via a TCP/IP network. If you are not running the IMC you will not be able to send or receive mail from the Internet by AspMail or any other means.

Once you have SMTP mail going with the IMC, no further action should be necessary to use AspMail. (Thanks to Steve Crane for this information).

Note: You must enable the rerouting on your Exchange's Internet Mail Connector. Go in the properties of your Internet Mail Services (Exchange 5.0). Check the reroute incoming SMTP mail option and add a route to your domain. Mail sent to "yourdomain.com" should be accepted as "inbound". Thanks to Sébastien STORMACQ for this information.

How do I upgrade to the latest version?

Download the latest "eval" version and follow the upgrade directions provided earlier in this document.

Can I redistribute this control with my products?

The license agreement does not permit redistribution of AspMail.

The SMTP server is reporting back a "no relay" error. What's wrong?

The SMTP server is looking at your FromAddress and determining that it doesn't know who you are. Some SMTP servers are configured to disallow the "relaying" or transfer of mail originating from addresses outside of its own domain. The only solution is to provide a FromAddress that's local to the SMTP server's domain or get the operator of the SMTP server to allow the FromAddress you are using. This setting is commonly used by ISP's to prevent spammers from using their resources.

Some of our emails are getting equal signs at the end of lines in some messages. Why?

AspMail can encode high characters using a scheme where the = sign
indicates a character to be decoded follow by the hex string value of
the character to be encoded. This system of course assumes that the client can decode these characters (which most can). This is called quoted-printable encoding. The default for AspMail is not to use QP encoding. Things that trigger automatic QP encoding:

  1. High characters - characters with the following ordinal values 0..31,61,128..255
  2. Long lines of a message body (you can turn wordwrap on to fix this case)

Most clients are capable of handling QP encoding. If your client is not capable then you should upgrade your client or you must work within the above limitations to prevent the QP encoding from occuring.

My component is registered. Should the Expires property return a date?

No. Registered versions return N/A for an expiration date. The registration process (per the instructions you received) should be run on the server.

I'm mailing a large number of people. At some point in the mailing it fails. Can you give me any tips?

The first tip is to use the SMTPLog property to write an SMTP log to disk and see what the point of failure is based on the log. The SMTP server is probably rejecting your message for some reason and the cause is typically determinable from the log.

Secondly, some SMTP servers only accept mail for locally known recipients. The SMTP server may be rejecting your message since it is being addressed to recipients outside the domain of that SMTP server. This is unusual but could possibly be the problem you are running into.

Using the SMTPLog property I got an error #132. How can I look up numeric errors returned by AspMail to find out what it means?

TShoot under the file menu has a Win32 error code lookup form.

What are some of the issues that affect the speed of the mailing?

A small message should take 3-4 seconds to send if the server is local and all other conditions are normal. The following list are some items that can affect transfer speed.

  1. The slower the TCP connection the longer the mailing will take. Typically a local server is much faster than a remote server. If you are losing packets between your server and the SMTP server you can expect longer times due to this packet loss.
  2. The size of the mailing. The larger the message the longer the message transfer will take to send.
  3. CPU utilization: If your CPU is experiencing heavy usage you can expect it to take longer to transfer mail.
  4. SMTP server utilization: If your SMTP server is experiencing heavy traffic response times from the server are going to take longer thus increasing the time it takes to send a message.

One thing we've found is that by changing the RemoteHost name from a hostname to an IP address can cut 3 or 4 seconds off some messages. Even if the RemoteHost name is set to the local server's name, we've found some messages waiting for the hostname lookup. Just change the address to an IP and you may see an increase in the speed.

Is there a limit to the length of email addresses.

AspMail support longer email addresses than anyone has so there are no practical limits. If your email is not being delivered see the previous questions for pointers on how to troubleshoot mail failures.

Does the 2 CPU license cover two servers or two processors?

In accordance with the license agreement, the 2 CPU license would cover either 2 single CPU servers or 1 dual CPU server. With this pricing model, AspMail is far more inexpensive than any "competing" products.

 

ASPQMail Properties

Property

Description

QMessage

Determines if message will be sent to queue. If QMessage is true it will be queued and handled by the QMail service. If QMessage is false it will be sent by SMTP.

Example:


                              

Mailer.QMessage = true

BodyText

The message body text. To clear the text once you have set it use the ClearBodyText Method.

Example:

Mailer.BodyText = "Your order for 15 widgets has been processed"

CharSet

The character set. By default the char set is US Ascii

Valid values:

  • 1 = US Ascii
  • 2 = ISO-8859-1

Example:

Mailer.CharSet = 2

ConfirmRead

The ConfirmReading flag. If this is set to true AND the recipients email program supports

this feature (and it is enabled) the recipients email program will send a notice back to the FromAddress confirming that this email has been read.

Example:

Mailer.ConfirmRead = true

ContentType

The ContentType property allows you to set the ContentType header of the message's BodyText. If, for example, you wanted to send HTML as the messages's body, you could set ContentType = "text/html" and EMail programs that support HTML content could properly display the HTML text.

Note: The ContentType property is ignored if you have file attachments.

Example:

Mailer.ContentType = "text/html"

CustomCharSet

If you wish to use a character set besides the included types you can set CustomCharSet to a character set string.

Example:

Mailer.CustomCharSet = "ISO-2022" or
Mailer.CustomCharSet = "big5"

DateTime

AspMail will, by default, create a Date/Time header for your local system using GMT. If you would like to override the date/time calculation set the DateTime property to a valid date/time string in the format defined by RFC 822 & RFC 1123.

Example:

Mailer.DateTime = "Fri, 02 May 1997 10:53:49 -0500"

Encoding

The encoding type for attachments. The default setting is MIME.

Valid values:

  • 1 = UUEncoded
  • 2 = MIME

Example:

Mailer.Encoding = 1

Expires

If the component is an eval version the expires property will return the date that the component quits functioning.

Example:

Response.Write "Component Expires: " & Mailer.Expires

FromName

The message originator's name.

Example:

Mailer.FromName = "Joe's Widget Shop"

FromAddress

The message originator's email address.

Example:

Mailer.FromAddress = "joe@widgets.com"

Live

Live allows you to test the component without an SMTP server. If Live is set to false then the NET SEND message will be executed with the FromName property being used as the recipient of the message. Only the subject is sent to the recipient.

Example:

Mailer.FromName = "ASPProgrammer"
Mailer.Live = false

Organization

Sets the Organization header in the message.

Example:

Mailer.Organization = "Your Company Name"

PGPPath

The path where PGP is located.

PGPParams

Parameters that PGP will use to process message.

Priority

Sets the message priority. Priorities are 1-5 and are reflected in the X-Priority

Valid values:

  • 1 – High
  • 3 – Normal
  • 5 – Low

Example:

Mailer.Priority = 1

RemoteHost

The remote SMTP host that the message will be sent through. This is typically an SMTP server located at your local ISP or it could be an internal SMTP server on your companies premises. Up to 3 server addresses can be specified, seperated by a semicolon. If the primary server is down the component will attempt to send the mail using the seconary server and so on.

Example:

Mailer.RemoteHost = "mailhost.myisp.net" or

Mailer.RemoteHost = "mailhost.myisp.net; mailhost.myotherisp.net"

ReplyTo

The ReplyTo property allows you to specify a different email address that replies should be sent to. By default mail programs should use the Reply-To: header for responses if this header is specified.

Response

The Response property returns any error messages that may occur.

ReturnReceipt

The ReturnReceipt flag. If this is set to true AND the recipients SMTP server supports

this feature (and it is enabled) the recipients SMTP server will send a notice back to the FromAddress confirming that this email has been delivered.

Example:

Mailer.ReturnReceipt = false

SMTPLog

If you need to debug the session give a log file name here. Make sure the IUSR_XYZ IIS user has security that allows the component to write to this file. Warning: Do not use this setting in situations where multiple users can access this component at the same time. This is for single user debugging ONLY!

Example:

Mailer.SMTPLog = "c:\smtplog.txt"

Subject

The message subject.

Example:

Mailer.Subject = "Stock split announced!"

SuppressMsgBody

The SuppressMsgBody property is true by default and is used in conjuction with the SMTPLog property. When SMTPLog is set to a file and SuppressMsgBody is true the log file receives a copy of the message text. If SuppressMsgBody is false the message text is not sent to the log.

TimeOut

Timeout is the maximum time that AspMail should wait for a response from the remote server. The default is 30 seconds.

Example:

Mailer.Timeout = 15

Urgent

The urgent flag sets the X-Urgent header in the outgoing message. Not all mail readers support this flag.

Example:

Mailer.Urgent = true

UseMSMailHeaders

MS-Mail priority headers, by default, are sent in addition to the standard SMTP priority headers. You can turn MS-Mail headers off with this property

Example:

Mailer.UseMSMailHeaders = false

Version

Gets the internal component version number.

Example:

Response.Write "Component Version: " & Mailer.Version

WordWrap

The WordWrap property is off by default. Setting WordWrap to true causes the message body to wordwrap at the position specified by the WordWrapLen property.

WordWrapLen

The WordWrapLen property is set to 70 by default. You can modify the position that wordwrap occurs by changing this value.

 ASPQMail Methods

Method

Parameters

Return Value

Description

SendMail

None

True or False

Example:

if Mailer.Se ndMail then

Response .Write "Mail sent..."

else

Response .Write "Mail failure. Check mail host server name and tcp/ip connectio n..."

end if

The SendMail method attempts to send the email.

AddRecipient

Mailer.AddRecipie nt "Jay Jones", "jayj@somehost.ne t"

True/Fals e based upon success or failure.

Adds a new recipient, as shown in the message's To: list.

ClearRecipient s

None

None

Clears any recipients assigned to the To list.

AddCC

Mailer.AddCC "Jay Jones", "jayj@somehost.ne t"

True/Fals e based upon success or failure.

Adds a new recipient, as shown in the message's CC list.

ClearCCs

None

None

Clears any recipients assigned to the CC list.

AddBCC

Mailer.AddBCC "Jay Jones", "jayj@somehost.ne t"

True/Fals e based upon success or failure.

Adds a new Blind Carbon Copy recipient. BCC recipients are not shown in any message recipient list.

ClearBCCs

None

None

Clears any recipients assigned to the BCC list.

ClearAllRecipi ents

None

None

Clears all recipients assigned to the To, CC and BCC lists.

AddAttachmen t

Filename to attach to message.

Example:

Mailer.AddAttach ment "d:\shipping\prodds k1.zip"

N/A

Adds attachments to current mailing. You must use an explicit path to attach files.

Make sure that the IUSR_XYZ IIS user, or the authenticated user has security rights that allow the component to read the necessary files! Note: Attachments may not supported in the eval version.

ClearAttachme nts

None

None

Clears any attachments that were previously set.

Example:

Mailer.ClearAttachments

ClearBodyText

None

None

Clears any text assigned to the message's body which may have been set previously by using the BodyText property.

ClearExtraHea ders

None

None

Clears any X-Headers that were set by use of AddExtraHeader.

AddExtraHead er

A string value that forms a proper SMTP X-Header

Example:

Mailer.AddExtraHe ader
("X-HeaderName: XHdrValue")

True or false. Returns true if X-Header was added.

Adds extra X-Headers to the mail envelope.

GetBodyTextFr omFile

See pgpmail.asp for more information.

See pgpmail. asp for more informati on.

Loads message's body text from a file. Optionally runs PGP on the message text.

See pgpmail.asp for more information.

EncodeHeader

strValue

strValue encoded as String

Encodes a string in RFC1522 format to provide support for 8bit mail headers such as 8bit subject headers.

Example:

Mailer.Subject = Mailer.EncodeHeader("R ésponse de Service à la clientèle")

GetTempPath

N/A

strPath

Returns the path set up by the OS for temporary mail files. See the discussion on TMP env variables for more information.

To Order Call 1-250-276-4349 or use our Sales Inquiry Form.
© Secure Information Systems Ltd. All Rights Reserved.