Chilkat
HOME
Android™
ASP
Visual Basic
VB.NET
C#
iOS (IPhone)
Objective-C
C++
C
MFC
Delphi
FoxPro
Java
Perl
PHP Extension
PHP ActiveX
Python
PowerShell
Ruby
SQL Server
VBScript
Read IMAP Email Headers
Call 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 |
© 2000-2012 Chilkat Software, Inc. All Rights Reserved.