Sample code for 30+ languages & platforms
Visual FoxPro

Remove a Part from a Multipart MIME Entity

See more MIME Examples

Demonstrates the Chilkat Mime.RemovePart method, which removes the direct child at a zero-based index. The only argument is the index; valid values are 0 through NumParts - 1. An out-of-range index returns false and changes nothing.

Note: The file paths are relative to the application's current working directory. Absolute paths may also be used. Supply the paths appropriate to your own environment.

Background: Removing a part is how you strip an attachment or drop an unwanted alternative when reprocessing a message. Because parts are addressed by position, be mindful that removing one shifts the indexes of those after it — when deleting several, iterate from the last index downward so earlier removals do not renumber the parts you still intend to remove.

Chilkat Visual FoxPro Downloads

Visual FoxPro
LOCAL lnSuccess
LOCAL loMime
LOCAL lnLastIndex

lnSuccess = 0

loMime = CreateObject('Chilkat.Mime')
lnSuccess = loMime.LoadMimeFile("qa_data/multipart_message.eml")
IF (lnSuccess = 0) THEN
    ? loMime.LastErrorText
    RELEASE loMime
    CANCEL
ENDIF

*  Remove the direct child part at a zero-based index.  Valid indexes are 0 through NumParts - 1.
*  Here the last part is removed.
lnLastIndex = loMime.NumParts - 1
lnSuccess = loMime.RemovePart(lnLastIndex)
IF (lnSuccess = 0) THEN
    ? loMime.LastErrorText
    RELEASE loMime
    CANCEL
ENDIF

? "Parts remaining: " + STR(loMime.NumParts)

RELEASE loMime