Sample code for 30+ languages & platforms
Xojo Plugin

Attach a File to a Multipart MIME Entity

See more MIME Examples

Demonstrates the Chilkat Mime.AppendPartFromFile method, which reads a local file, creates an attachment part, and appends it. The only argument is the file path; the content headers are chosen from the filename extension.

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: This is the one-call way to add an attachment: Chilkat reads the file, infers its Content-Type from the extension, base64-encodes binary content, and appends it as a child part — typically inside a multipart/mixed. It is the building block behind adding attachments to an email, saving you from constructing the part and setting its headers by hand.

Chilkat Xojo Plugin Downloads

Xojo Plugin
Dim success As Boolean
success = False

//  Demonstrates the Mime.AppendPartFromFile method, which reads a local file, creates an attachment
//  part, and appends it.  The only argument is the file path; the content headers are chosen from
//  the filename extension.

Dim mime As New Chilkat.Mime
success = mime.NewMultipartMixed()
If (success = False) Then
    System.DebugLog(mime.LastErrorText)
    Return
End If

//  A message body part.
Dim bodyPart As New Chilkat.Mime
success = bodyPart.SetBodyFromPlainText("Please see the attached files.")
If (success = False) Then
    System.DebugLog(bodyPart.LastErrorText)
    Return
End If

success = mime.AppendPart(bodyPart)
If (success = False) Then
    System.DebugLog(mime.LastErrorText)
    Return
End If

//  Attach files directly.
success = mime.AppendPartFromFile("qa_data/report.pdf")
If (success = False) Then
    System.DebugLog(mime.LastErrorText)
    Return
End If

success = mime.AppendPartFromFile("qa_data/photo.jpg")
If (success = False) Then
    System.DebugLog(mime.LastErrorText)
    Return
End If

System.DebugLog("Number of parts: " + Str(mime.NumParts))