Chilkat HOME ASP Visual Basic VB.NET C# Visual C++ C MFC Delphi FoxPro Java Perl PHP Python Ruby SQL Server VBScript
|
Process Large POP3 MailboxDemonstrates how to read email from a mailbox that may contain a large number of emails (on the order of thousands of emails or more). require 'chilkat' # The mailman object is used for receiving (POP3) # and sending (SMTP) email. mailman = Chilkat::CkMailMan.new() # Any string argument automatically begins the 30-day trial. success = mailman.UnlockComponent("30-day trial") if (success != true) print "Component unlock failed" + "\n" exit end # Set the POP3 server's hostname mailman.put_MailHost("mail.chilkatsoft.com") # Set the POP3 login/password. mailman.put_PopUsername("myLogin") mailman.put_PopPassword("myPassword") # First, get the list of UIDLs for all emails in the mailbox. sa = mailman.GetUidls() numEmails = sa.get_Count() # Download the emails in chunks of 10 emails each. chunkBeginIdx = 0 chunkEndIdx = 9 if (chunkEndIdx >= numEmails) chunkEndIdx = numEmails - 1 end saChunk = Chilkat::CkStringArray.new() while (chunkEndIdx < (numEmails - 1)) # Build a chunk of 10 UIDLs. saChunk.Clear() for i in chunkBeginIdx .. chunkEndIdx saChunk.Append(sa.GetString(i)) end # Display the UIDLs in this chunk... chunkStr = saChunk.saveToText() print chunkStr + "\n"; print "----" + "\n" + "\n"; # Download this chunk of email from the POP3 server. bundle = mailman.FetchMultiple(saChunk) if (bundle == nil ) print mailman.lastErrorText() + "\n" exit end # Process the bundle... # (your application's processing code goes here...) # Get the next chunk... chunkBeginIdx += 10 if (chunkBeginIdx >= numEmails) break end chunkEndIdx += 10 if (chunkEndIdx >= numEmails) chunkEndIdx = numEmails - 1 end end |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2007 Chilkat Software, Inc. All Rights Reserved.