次のエージェントはマルチパートエンティティの最初の、または唯一の分岐の最後にある子をすべて取得します。
Sub Initialize
Dim s As New NotesSession
Dim db As NotesDatabase
Dim dc As NotesDocumentCollection
Dim doc As NotesDocument
Dim mime As NotesMIMEEntity
Dim child As NotesMIMEEntity
Dim stream As NotesStream
Set db = s.CurrentDatabase
s.ConvertMIME = False ' Do not convert MIME to rich text
Set dc = db.UnprocessedDocuments
Set doc = dc.GetFirstDocument
If Not(doc Is Nothing) Then
Set mime = doc.GetMIMEEntity
If Not(mime Is Nothing) Then
REM Drill down to end of first branch
Set child = mime.GetFirstChildEntity
While Not(child Is Nothing)
Set mime = child
Set child = mime.GetFirstChildEntity
Wend
REM Set up stream for file output
Set stream = s.CreateStream
pathname$ = "c:¥lotus¥notes¥data¥temp.txt"
If Not stream.Open(pathname$, "us-ascii") Then
Messagebox pathname$,, "Open failed"
Goto ExitSub
End If
REM Get content of all children
REM at end level of first branch
Do
Call mime.GetContentAsText(stream)
Set mime = mime.GetNextSibling
Loop Until mime Is Nothing
Else
Messagebox "Not MIME",, doc.GetItemValue("Subject")(0)
End If
End If
ExitSub:
s.ConvertMIME = True ' Restore conversion
End Sub