Chilkat HOME ASP Visual Basic VB.NET C# Visual C++ C MFC Delphi FoxPro Java Perl PHP Python Ruby SQL Server VBScript
Read IMAP Email HeadersCall FetchHeaders to download only the email headers. Dim imap As New ChilkatImap Dim success As Long ' Anything unlocks the component and begins a fully-functional 30-day trial. success = imap.UnlockComponent("Anything for 30-day trial") If (success <> 1) Then MsgBox imap.LastErrorText Exit Sub End If ' Connect to an IMAP server. success = imap.Connect("mail.chilkatsoft.com") If (success <> 1) Then MsgBox imap.LastErrorText Exit Sub End If ' Login success = imap.Login("****","****") If (success <> 1) Then MsgBox imap.LastErrorText Exit Sub End If ' Select an IMAP mailbox success = imap.SelectMailbox("Inbox") If (success <> 1) Then MsgBox imap.LastErrorText Exit Sub End If Dim messageSet As MessageSet ' We can choose to fetch UIDs or sequence numbers. Dim fetchUids As Long fetchUids = 1 ' Get the message IDs of all the emails in the mailbox Set messageSet = imap.Search("ALL",fetchUids) If (messageSet Is Nothing ) Then MsgBox imap.LastErrorText Exit Sub End If ' When downloading headers, each email object contains ' (obviously) the headers, but the body will be missing. ' Also, attachments will not be included. However, it is ' possible to get information about the attachments ' as well as the complete size of the email. Dim bundle As ChilkatEmailBundle2 Set bundle = imap.FetchHeaders(messageSet) If (bundle Is Nothing ) Then MsgBox imap.LastErrorText Exit Sub End If ' Loop over the email objects and display information ' about each: Dim i As Long For i = 0 To bundle.MessageCount - 1 Dim email As ChilkatEmail2 Set email = bundle.GetEmail(i) ' Display the From and Subject Text1.Text = Text1.Text & email.From & vbCrLf Text1.Text = Text1.Text & email.Subject & vbCrLf ' Display the recipients: Dim j As Long Dim name As String Dim addr As String For j = 0 To email.NumTo - 1 name = email.GetToName(j) addr = email.GetToAddr(j) Text1.Text = Text1.Text & name & ", " _ & addr & vbCrLf Next For j = 0 To email.NumCC - 1 name = email.GetCcName(j) addr = email.GetCcAddr(j) Text1.Text = Text1.Text & name & ", " _ & addr & vbCrLf Next ' Show the total size of the email, including body and attachments: Text1.Text = Text1.Text & email.Size & vbCrLf ' When a full email is downloaded, we would use the ' email.NumAttachments property in conjunction with the ' email.GetMailAttach* methods. ' However, when an email object contains only the header, ' we need to access the attachment info differently: Dim numAttach As Long numAttach = imap.GetMailNumAttach(email) For j = 0 To numAttach - 1 Text1.Text = Text1.Text & imap.GetMailAttachFilename(email,j) & vbCrLf Dim attachSize As Long attachSize = imap.GetMailAttachSize(email,j) Text1.Text = Text1.Text & " size = " _ & attachSize & " bytes" & vbCrLf Next Text1.Text = Text1.Text & "--" & vbCrLf Next ' Disconnect from the IMAP server. imap.Disconnect |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2009 Chilkat Software, Inc. All Rights Reserved.