DataFlex
DataFlex
Count the Attachments in an Email
See more Email Object Examples
Demonstrates the read-only Chilkat Email.NumAttachments property, which is the number of ordinary attachments in the email. Attachment indexes are zero-based. Related resources inside a multipart/related enclosure are counted separately by NumRelatedItems, and embedded message/rfc822 emails by NumAttachedMessages. This example adds two attachments and prints the count.
Background: An "attachment" is a MIME part meant to be saved or opened as a separate file, as opposed to being displayed as the message body. Chilkat decides whether a part is an attachment by weighing its MIME structure, content type, and
Content-Disposition together — so a part can count as an attachment even without an explicit Content-Disposition: attachment header. Note that if an email was downloaded from an IMAP server without its attachment data, this property reflects only what is actually present in the object.Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Handle hoEmail
Boolean iSuccess
Integer iTemp1
// Demonstrates the read-only Email.NumAttachments property, which is the number
// of ordinary attachments contained in the email. Attachment indexes are zero-based.
Get Create (RefClass(cComChilkatEmail)) To hoEmail
If (Not(IsComObjectCreated(hoEmail))) Begin
Send CreateComObject of hoEmail
End
Set ComSubject Of hoEmail To "Email with attachments"
Set ComBody Of hoEmail To "Two files are attached."
// Add two string attachments.
Get ComAddStringAttachment Of hoEmail "readme.txt" "This is the first attachment." To iSuccess
Get ComAddStringAttachment Of hoEmail "notes.txt" "This is the second attachment." To iSuccess
Get ComNumAttachments Of hoEmail To iTemp1
Showln "NumAttachments = " iTemp1
End_Procedure