Sample code for 30+ languages & platforms
Xojo Plugin

Create Email with Non-Standard Binary Body

Creates an email where the only body is a binary WAV file. The technique used in the example could be applied to other binary files, such as PDF, MS-WORD docs, Excel docs, etc.

Chilkat Xojo Plugin Downloads

Xojo Plugin
Dim success As Boolean
success = False

// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

Dim mime As New Chilkat.Mime

success = mime.SetBodyFromFile("VoiceMessage.wav")
If (success = False) Then
    System.DebugLog(mime.LastErrorText)
    Return
End If

// The MIME has this header:
// Content-Disposition: attachment;
// 	 filename="VoiceMessage.wav"
// Content-Transfer-Encoding: base64
// Content-Type: audio/x-wav;
// 	name="VoiceMessage.wav"

// We don't want the content-disposition to be an
// attachment -- otherwise the email object will self-correct
// and put it in a multipart/mixed format...
mime.Disposition = ""
mime.Filename = ""

Dim strMime As String
strMime = mime.GetMime()
System.DebugLog(strMime)

// Now load it into an email object:
Dim email As New Chilkat.Email
success = email.SetFromMimeText(strMime)
If (success = False) Then
    System.DebugLog(email.LastErrorText)
    Return
End If

// Add subject, TO, FROM, etc.
email.Subject = "This is a test"
email.From = "support@chilkatsoft.com"
success = email.AddTo("Matt","matt@chilkatsoft.com")

// Your email is ready to send.
// (but for this example, we'll simply save it to a file...)
success = email.SaveEml("email.eml")
If (success = False) Then
    System.DebugLog(email.LastErrorText)
    Return
End If

System.DebugLog("OK!")