Visual Basic 6.0
Visual Basic 6.0
Save All MIME Attachments to Files
See more MIME Examples
Demonstrates the Chilkat Mime.PartsToFiles method, which recursively traverses the MIME tree and saves each part having a nonempty filename parameter to a directory. The first argument is the destination directory and the second is a StringTable that receives the saved filenames.
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 extracts every named attachment from a message in one call, walking the whole tree so it finds attachments nested inside multipart containers. It saves only parts that declare a
filename — inline body parts without one are skipped — and reports what it wrote via the StringTable, which is handy for logging or follow-up processing. The destination directory must already exist.Chilkat Visual Basic 6.0 Downloads
Dim success As Long
success = 0
Dim mime As New ChilkatMime
success = mime.LoadMimeFile("qa_data/multipart_message.eml")
If (success = 0) Then
Debug.Print mime.LastErrorText
Exit Sub
End If
' Recursively traverse the MIME tree and save each part that has a nonempty "filename" parameter
' to a directory. The 1st argument is the destination directory and the 2nd is a StringTable
' that receives the saved filenames.
Dim savedFiles As New ChilkatStringTable
success = mime.PartsToFiles("qa_output/attachments",savedFiles)
If (success = 0) Then
Debug.Print mime.LastErrorText
Exit Sub
End If
Dim n As Long
n = savedFiles.Count
Debug.Print "Saved " & n & " files:"
Dim i As Long
For i = 0 To n - 1
Dim name As String
name = savedFiles.StringAt(i)
If (savedFiles.LastMethodSuccess = 0) Then
Debug.Print savedFiles.LastErrorText
Exit Sub
End If
Debug.Print name
Next