Sample code for 30+ languages & platforms
PureBasic

Remove a Single Related Item from an Email

See more Email Object Examples

Demonstrates the Chilkat Email.DropRelatedItem method, which removes the related item at a given zero-based index. A related item is typically an embedded image or style sheet referenced from the HTML body (via a cid: link or Content-Location). This example adds a related style sheet, then removes it by index, printing the count before and after.

Background: Related items live in the message's multipart/related enclosure and are indexed from 0 to NumRelatedItems - 1. Removing one by index is useful when editing a received message — for example stripping a tracking pixel or an unwanted embedded image — while leaving the HTML body and any other related resources in place. To remove them all at once, use DropRelatedItems.

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkEmail.pb"

Procedure ChilkatExample()

    ;  Demonstrates the DropRelatedItem method, which removes the related item at a given
    ;  zero-based index.  A related item is typically an embedded image or style sheet
    ;  referenced from the HTML body.

    email.i = CkEmail::ckCreate()
    If email.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    ;  Set an HTML body that references a related style sheet by name (Content-Location).
    CkEmail::ckSetHtmlBody(email,"<html><head><link rel=" + Chr(34) + "stylesheet" + Chr(34) + " href=" + Chr(34) + "styles.css" + Chr(34) + "/></head><body>Styled.</body></html>")

    ;  Add the related item (becomes index 0).
    CkEmail::ckAddRelatedString2(email,"styles.css","body { color: navy; }","utf-8")
    Debug "NumRelatedItems before = " + Str(CkEmail::ckNumRelatedItems(email))

    ;  Remove the related item at index 0.
    CkEmail::ckDropRelatedItem(email,0)

    Debug "NumRelatedItems after = " + Str(CkEmail::ckNumRelatedItems(email))


    CkEmail::ckDispose(email)


    ProcedureReturn
EndProcedure