Sample code for 30+ languages & platforms
DataFlex

Get the Content-ID of an Attachment

See more Email Object Examples

Demonstrates the Chilkat Email.GetAttachmentContentID method, which returns the Content-ID header field for the Nth attachment. The index is zero-based, so the first attachment is 0. This example adds an attachment and reads its Content-ID (which may be empty when none was assigned).

Background: A Content-ID is a unique identifier for a MIME part. It is essential for inline "related" resources, where HTML references an image by cid:, but ordinary file attachments usually have none. Reading it is useful when inspecting how a message is assembled, or when distinguishing parts that are referenced from the body versus those meant purely as downloadable attachments.

Chilkat DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Handle hoEmail
    Boolean iSuccess
    String sCid

    //  Demonstrates the GetAttachmentContentID method, which returns the Content-ID header
    //  field for the Nth attachment.  The index is zero-based (the first attachment is 0).

    Get Create (RefClass(cComChilkatEmail)) To hoEmail
    If (Not(IsComObjectCreated(hoEmail))) Begin
        Send CreateComObject of hoEmail
    End
    Set ComSubject Of hoEmail To "Attachment Content-ID"

    Get ComAddStringAttachment Of hoEmail "notes.txt" "Some notes." To iSuccess

    //  Get the Content-ID of the first attachment (may be empty if none was assigned).
    Get ComGetAttachmentContentID Of hoEmail 0 To sCid
    Showln "Attachment 0 Content-ID: " sCid


End_Procedure