ComposeMessage Method  
 

Compose a new mail message.

Syntax

object.ComposeMessage( From, To, [Cc], [Bcc], [Subject], [MessageText], [MessageHTML], [CharacterSet], [EncodingType] )

Parameters

From
A string argument which specifies the sender's email address. Only a single address should be specified. After the message has been composed, the From property will be updated with this value.
To
A string argument which specifies one or more recipient email addresses. Multiple email addresses may be specified by separating them with commas. After the message has been composed, the To property will be updated with this value.
Cc
An optional string which specifies one or more additional recipient addresses that will receive a copy of the message. If this argument is not specified, then no Cc header field will be created for this message. After the message has been composed, the Cc property will be updated with this value.
Bcc
An optional string which specifies one or more additional recipient addresses that will receive a "blind" copy of the message. If this argument is not specified, then no Bcc header field will be created for this message. After the message has been composed, the Bcc property will be updated with this value. Note that the Bcc header field is not normally included in the header when the message is exported.
Subject
An optional string argument which specifies the subject for the message. If the argument is not specified, then no Subject header field will be created for this message. After the message has been composed, the Subject property will be updated with this value.
MessageText
An optional string argument which specifies the body of the message. Each line of text contained in the string should be terminated with a carriage-return/linefeed (CRLF) pair, which is recognized as the end-of-line. If the argument is not specified, then the message will have an empty body unless the MessageHTML argument has been specified.
MessageHTML
An optional argument which specifies an alternate HTML formatted message. If the MessageText argument has been specified, then a multipart message will be created with both plain text and HTML text as the alternative. This allows mail clients to select which message body they wish to display. If the MessageText argument is not specified or is an empty string, then the message will only contain HTML. Although this is supported, it is not recommended because older mail clients may be unable to display the message correctly.
CharacterSet
An optional integer value which specifies the character set for the message text. If this parameter is omitted, the default is for the message to be composed using the standard UTF-8 character set.
EncodingType
An optional integer value which specifies the content encoding to use for the message text. The default is for the control to use 8-bit encoding. One of the following values may be used:
Value Description
mimeEncoding7Bit Each character is encoded in one or more bytes, with each byte being 8 bits long, with the first bit cleared. This encoding is most commonly used with plain text using the US-ASCII character set, where each character is represented by a single byte in the range of 20h to 7Eh.
mimeEncoding8Bit Each character is encoded in one or more bytes, with each byte being 8 bits long and all bits are used. 8-bit encoding is used with UTF-8 and other multi-byte character sets,
mimeEncodingQuoted Quoted-printable encoding is designed for textual messages where most of the characters are represented by the ASCII character set and is generally human-readable. Non-printable characters or 8-bit characters with the high bit set are encoded as hexadecimal values and represented as 7-bit text. Quoted-printable encoding is typically used for messages which use character sets such as ISO-8859-1, as well as those which use HTML.
mimeEncodingBase64 Base64 encoding converts binary or text data to ASCII by translating it so each base64 digit represents 6 bits of data. This encoding method is commonly used with messages that contain binary data (such as binary file attachments), or when text uses extended characters that cannot be represented by 7-bit ASCII. It is recommended that you use base64 encoding with Unicode text.

Return Value

A value of zero is returned if the method succeeds. Otherwise, a non-zero error code is returned which indicates the cause of the failure.

Remarks

email addresses may be specified as simple addresses, or as commented addresses that include the sender's name or other information. For example, any one of these address formats are acceptable:

user@domain.tld
User Name <user@domain.tld>
user@domain.tld (User Name)

To specify multiple addresses, you should separate each address by a comma or semi-colon. Note that the From parameter cannot specify multiple addresses, however it is permitted with the To, Cc and Bcc parameters.

To send a message that contains HTML, it is recommended that you provide both a plain text version of the message body and an HTML formatted version. While it is permitted to send a message that only contains HTML, some older mail clients may not be capable of displaying the message correctly. In some cases, anti-spam software will increase the spam score of messages that do not contain a plain text message body. This can result in your message being rejected or quarantined by the mail server.

Example

nError = MailMessage1.ComposeMessage(editFrom.Text, _
                                     editTo.Text, _
                                     editCc.Text, _
                                     editBcc.Text, _
                                     editSubject.Text, _
                                     editMessage.Text)
If nError > 0 Then
    MessageBox MailMessage1.LastErrorString, vbExclamation
    Exit Sub
End If

See Also

Bcc Property, Cc Property, Encoding Property, From Property, Recipient Property, Recipients Property, Subject Property, Text Property, To Property