次のエージェントはマルチパートエンティティの最初の、または唯一の分岐の最後にある子を取得します。
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 child of first branch
Set child = mime.GetFirstChildEntity
While Not(child Is Nothing)
Set mime = child
Set child = mime.GetFirstChildEntity
Wend
If mime.ContentType = "text" And _
mime.ContentSubType = "plain" Then
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 Write content of child to file
Call mime.GetContentAsText(stream)
Else
Messagebox "Not plain text",, _
doc.GetItemValue("Subject")(0)
End If
Else
Messagebox "Not MIME",, _
doc.GetItemValue("Subject")(0)
End If
End If
ExitSub:
s.ConvertMIME = True ' Restore conversion
End Sub