> i asked this long time ago but i was wondering whether im doing
> something wrong. i want to collect the UIDL's from an IMAP server and
> for that i have to collect the UIDL for each and every email in a
> loop: for x := 1 to imap.SelectedCount do begin
>   if not imap.GetUID(y,imapUID) then continue;    <--- this slows
>   things down list.Add('1 ' + IntToStr(imapUID));
> end;
> 
> this is working ok but for large amount of emails it is very slow. is
> there a better/quicker way to collect uidls from an imap server? 

Do not call GetUID... it is one IMAP server command per one message. 
it must be slow!

But why you not turn on UID IMAP mode instead? See for UID property. 
It turn on UID mode, when you and server using UIDs instead 
sequential numbers.


-- 
Lukas Gebauer.

E-mail: [EMAIL PROTECTED]
http://synapse.ararat.cz/ - Ararat Synapse - TCP/IP Lib.


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
synalist-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/synalist-public

Reply via email to