ChilkatMime ActiveX Reference
ChilkatMime
Chilkat MIME allows you to easily create and manipulate MIME and S/MIME messages from within your applications.
Properties
Boundary As String
The boundary string to be used if this is a multipart message. By default, the boundary is automatically generated to be a unique and random string, so explicitly setting the boundary is not necessary.
Charset As String
The charset, such as "ISO-8859-1" or "utf-8"
ContentType As String
The MIME content type, such as "text/plain", "text/html", "multipart/alternative", "multipart/mixed", etc.
Disposition As String
The content disposition, which can be "attachment", "inline", etc.
Encoding As String
A content encoding such as "base64", "quoted-printable", "7bit", "8bit", etc.
Filename As String
The filename when the content disposition is "attachment".
LastErrorHtml As String (read-only)
Error information in HTML format for the last method called.
LastErrorText As String (read-only)
Error information in plain-text format for the last method called.
LastErrorXml As String (read-only)
Error information in XML format for the last method called.
Micalg As String
The MIC algorithm, such as "SHA1" when the content type is multipart/signed. Properties such as this are rarely set manually, as Chilkat MIME automatically sets it to the correct value when creating a signed message.
Name As String
The name attribute of the content-type header field.
NumEncryptCerts As Long (read-only)
The number of certificates use for encryption. This property is set after UnwrapSecurity is called.
NumHeaderFields As Long (read-only)
The number of header fields. Header field names and values can be retrieved by index (starting at 0) by calling GetHeaderFieldName and GetHeaderFieldValue.
NumParts As Long (read-only)
The number of sub-parts contained within this message. Each sub-part is a complete Chilkat MIME message itself.
NumSignerCerts As Long (read-only)
The number of certificates use for signing. This property is set after UnwrapSecurity is called.
Protocol As String
A protocol such as "application/x-pkcs7-signature". Properties such as this are rarely set manually, as Chilkat MIME automatically sets it to the correct value when creating a signed message.
UnwrapExtras As Long
Controls whether extra (informative) header fields are added to the MIME message when unwrapping security.
UseMmDescription As Long
Controls whether the boilerplate text "This is a multi-part message in MIME format." is used as the body content of a multipart MIME part.
Version As String (read-only)
The version, such as "1.0.0".
Methods
AddDetachedSignature(cert As ChilkatCert) As Long
Signs the message using the certificate provided. If successful, the message is converted to "multipart/signed" and the original message will be contained in the first sub-part.
AddDetachedSignature2(cert As ChilkatCert, transferHeaderFields As Long) As Long
Same as AddDetachedSignature, except an extra argument is provided to control whether header fields from the calling MIME object are transferred to the content part of the multipart/signed object. This method transforms the calling object into a multipart/signed MIME with two sub-parts. The first contains the original content of the calling object, and the second contains the digital signature. Returns 1 for success, 0 for failure.
AddDetachedSignaturePk(cert As ChilkatCert, key As PrivateKey) As Long
To be documented soon.
AddDetachedSignaturePk2(cert As ChilkatCert, key As PrivateKey, transferHeaderFields As Long) As Long
To be documented soon...
AddHeaderField(fieldName As String, fieldValue As String)
Adds a header field to the MIME.
AppendPart(iMime As ChilkatMime)
Appends a MIME message to the sub-parts of this message. Arbitrarily complex messages with unlimited nesting levels can be created. If the calling Mime object is not already multipart, it is automatically converted to multipart/mixed first.
AppendPartFromFile(fileName As String) As Long
Loads a file and creates a Mime message object using the file extension to determine the content type, and adds it as a sub-part to the calling object.
ContainsEncryptedParts() As Long
Returns 1 if the MIME message contains encrypted parts.
ContainsSignedParts() As Long
Returns 1 if the MIME message contains signed parts.
Convert8Bit()
(PreRelease) Changes the content-transfer-encoding to "base64" for all 8bit or binary MIME subparts. This allows for the MIME to be exported as a string via the GetMime method.
ConvertToMultipartAlt() As Long
To be documented soon.
ConvertToMultipartMixed() As Long
To be documented soon.
ConvertToSigned(cert As ChilkatCert) As Long
Digitally signs the calling Mime object, but rather than the signature becoming a sub-part of the message (as in AddDetachedSignature) it becomes part of the message. In S/MIME terms, the message becomes application/x-pkcs7-mime rather than multipart/signed.
ConvertToSignedPk(cert As ChilkatCert, key As PrivateKey) As Long
To be documented soon...
Decrypt() As Long
To be documented soon.
Decrypt2(cert As ChilkatCert, key As PrivateKey) As Long
To be documented soon.
Encrypt(cert As ChilkatCert) As Long
Encrypt a MIME message object using a digital certificate.
GetBodyBinary() As Variant
Returns the body of the MIME message as a block of binary data. The body is automatically converted from its encoding type, such as base64 or quoted-printable, before being returned. Returns a zero-length byte array (as a Variant) on failure
GetBodyDecoded() As String
Returns the body of the MIME message as a string. The body is automatically converted from its encoding type, such as base64 or quoted-printable, before being returned. Returns a null on failure
GetBodyEncoded() As String
Returns the body of the MIME message as a String. The body is explicitly not decoded from it's encoding type, so if it was represented in Base64, you will get the Base64 encoded body, as an example. Returns a null on failure
GetEncryptCert(index As Long) As ChilkatCert
Returns the Nth certificate used for encryption. Most likely the message was only encrypted once, and if so, the index should be set to 0.
GetEntireBody() As String
Returns the entire MIME body, including all sub-parts. Returns a null on failure
GetEntireHead() As String
Returns the MIME header. Returns a null on failure
GetHeaderField(name As String) As String
Returns the content of a MIME header field. The "fieldName" is case-insensitive, and if the MIME header field does not exist, an empty string is returned. Returns a null on failure
GetHeaderFieldName(index As Long) As String
Returns the Nth MIME header field name. Returns a null on failure
GetHeaderFieldValue(index As Long) As String
Returns the Nth MIME header field value. Returns a null on failure
GetMime() As String
Returns a string containing the complete MIME message, including all sub-parts. Returns a null on failure
GetMimeBytes() As Variant
(PreRelease) Returns a byte array containing the complete MIME message, including all sub-parts. Returns a zero-length byte array (as a Variant) on failure
GetPart(index As Long) As ChilkatMime
Returns the Nth sub-part of the MIME message. Indexing begins at 0.
GetSignerCert(index As Long) As ChilkatCert
Returns the Nth digital certificate used to sign the MIME message. Indexing begins at 0.
GetXml() As String
Converts the MIME (or S/MIME) message to XML and returns the XML as a string. Returns a null on failure
IsApplicationData() As Long
Return true if the MIME message contains application data, otherwise returns false.
IsAttachment() As Long
Return true if this MIME message is an attachment, otherwise returns false
IsAudio() As Long
Return true if the MIME message contains audio data, otherwise returns false.
IsEncrypted() As Long
Returns true if the MIME message is encrypted.
IsHtml() As Long
Return true if the MIME body is HTML
IsImage() As Long
Return true if the MIME message contains image data, otherwise returns false.
IsMultipart() As Long
Return true if the MIME message is multipart (multipart/mixed, multipart/related, multipart/alternative, etc.), otherwise returns false.
IsMultipartAlternative() As Long
Return true if the MIME message is multipart/alternative, otherwise returns false.
IsMultipartMixed() As Long
Return true if the MIME message is multipart/mixed, otherwise returns false.
IsMultipartRelated() As Long
Return true if the MIME message is multipart/related, otherwise returns false.
IsPlainText() As Long
Return true if the MIME message body is plain text, otherwise returns false.
IsSigned() As Long
Return true if the MIME message is digitally signed, otherwise returns false.
IsText() As Long
Return true if the MIME message body is any text content type, such as text/plain, text/html, text/xml, etc., otherwise returns false.
IsVideo() As Long
Return true if the MIME message contains video data, otherwise returns false.
IsXml() As Long
Return true if the MIME message body is XML, otherwise returns false.
LoadMime(mimeMsg As String) As Long
Discards the current contents of the MIME object and loads a new MIME message from a string.
LoadMimeBytes(binaryMime As Variant)
Loads a MIME document from an in-memory byte array.
LoadMimeFile(fileName As String) As Long
Discards the current contents of the MIME object and loads a new MIME message from a file.
LoadXml(xml As String) As Long
Converts XML to MIME and replaces the MIME object's contents with the converted XML.
LoadXmlFile(fileName As String) As Long
Converts XML to MIME and replaces the MIME object's contents with the converted XML.
NewMessageRfc822(iMime As ChilkatMime)
Clears the Mime object and initializes it such that the header contains a "content-type: message/rfc822" line and the body is the MIME text of the Mime object passed to the method.
NewMultipartAlternative()
Discards the current MIME message header fields and contents, if any, an initializes the MIME object to be an empty mulipart/alternative message.
NewMultipartMixed()
Discards the current MIME message header fields and contents, if any, an initializes the MIME object to be an empty mulipart/mixed message.
NewMultipartRelated()
Discards the current MIME message header fields and contents, if any, an initializes the MIME object to be an empty mulipart/related message.
RemovePart(index As Long)
Removes the Nth subpart from the MIME message.
SaveBody(filename As String) As Long
Saves the MIME message body to a file. If the body is base64 or quoted-printable encoded, it is automatically decoded.
SaveLastError(filename As String) As Long
Saves the last error information to an XML formatted file.
SaveMime(filename As String) As Long
Saves the MIME message to a file, in MIME format. (This is the same as the .EML format used by Microsoft Outlook Express.)
SaveXml(filename As String) As Long
Converts the MIME message to XML and saves to an XML file.
SetBodyFromBinary(binaryData As Variant)
Sets the MIME message body from a byte array.
SetBodyFromEncoded(encoding As String, bodyText As String)
Sets the MIME message body from a Base64 or Quoted-Printable encoded string.
SetBodyFromFile(filename As String) As Long
Sets the MIME message body from the contents of a file.
SetBodyFromHtml(bodyText As String)
Sets the MIME message body from a string containing HTML, and also updates the content-type to be text/html
SetBodyFromPlainText(bodyText As String)
Sets the MIME message body from a string containing plain text, and also updates the content-type to be text/plain
SetBodyFromXml(bodyText As String)
Sets the MIME message body from a string containing XML, and also updates the content-type to be text/xml
SetCSP(iCsp As ChilkatCSP)
Sets the encryption and digital signature preferences for this message. The CSP object will control the Cryptographic Service Provider used, the key container within the CSP to be used, and the encryption/hash algorithms.
SetHeaderField(fieldName As String, fieldValue As String)
Adds or replaces a MIME message header field. If the field already exists, it is automatically replaced. Otherwise it is added.
SetVerifyCert(iCert As ChilkatCert)
Allows a certificate to be explicitly specified for verifying a signature.
UnlockComponent(unlockCode As String) As Long
Unlocks the component allowing for the full functionality to be used. Returns true if the unlock code is valid.
UnwrapSecurity() As Long
Decrypts and verifies all digital signatures contained within the MIME message, and returns true if all decryptions and verifications succeeded. Otherwise returns false. After unwrapping, the information regarding security and certificates can be obtained by the methods GetSignerCert and GetEncryptCert, and the properties NumEncryptCerts and NumSignerCerts.
Verify() As Long
To be documented soon...
|