login about faq

This client is using Exchange 2003. The POP3 Uidls that we get back look like this - "AAzzz+GABAQmSpNxMHGHeyUSOgl9I6u/". We use a comparison in our code, "If uidl > LastUid Then" to determine where we left off last time, so we know which email that we've already downloaded, and which ones we need to download. Because these Uidls are not in a numerical or alphabetical order, our comparison is not working.

This approach has worked fine with our other clients. So, I'm assuming this is an issue with Exchange 2003 and not with your new update. If I'm correct, then do you have a different, better approach that we should be taking here. How do we separate those emails that we've already downloaded and those that we haven't?

asked Jul 23 '12 at 10:07

chilkat's gravatar image

chilkat ♦♦

The GetUidls method returns the full set of UIDLs for all the emails in the INBOX of a POP3 server. The technique used by Chilkat for automated order processing is to do this:

  1. When finished processing emails, save the complete set of UIDLs returned by GetUidls to a file. This could be a simple text file with one UIDL per line.
  2. When checking for new emails, first load the UIDLs from the previous time into a hash table.
  3. Call GetUidls to fetch the new complete set of UIDLs from the POP3 server.
  4. Iterate over the new list of UIDLs. For each one, check to see if it exists in your hash table. If so, then it's an "already seen" email. If not, then process the email (by downloading the email by UIDL).
  5. Go to step #1.

answered Jul 23 '12 at 10:13

chilkat's gravatar image

chilkat ♦♦

Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here



Answers and Comments

Markdown Basics

  • *italic* or __italic__
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported



Asked: Jul 23 '12 at 10:07

Seen: 2,411 times

Last updated: Jul 23 '12 at 10:13

powered by OSQA