Sample code for 30+ languages & platforms
DataFlex

Get the POP3 UIDL of an Email

See more Email Object Examples

Demonstrates the read-only Chilkat Email.Uidl property, which contains the unique message identifier assigned by a POP3 server; the value is also represented by the X-UIDL header field. This example sets X-UIDL directly to illustrate how it maps to the Uidl property (normally the value comes from the POP3 server during download).

Background: A UIDL ("unique ID listing") is POP3's stable identifier for a message in a mailbox — it stays the same across sessions, so a client can remember which messages it has already downloaded and avoid fetching them again. Note this is POP3-specific: IMAP uses its own UID instead, which Chilkat stores in the ckx-imap-uid header rather than in Uidl.

Chilkat DataFlex Downloads

DataFlex
Use ChilkatAx-win32.pkg

Procedure Test
    Handle hoEmail
    String sTemp1

    //  Demonstrates the read-only Email.Uidl property, which contains the unique message
    //  identifier assigned by a POP3 server.  The value is represented by the X-UIDL header
    //  field.  Here we set X-UIDL directly to show how it maps to the Uidl property.

    Get Create (RefClass(cComChilkatEmail)) To hoEmail
    If (Not(IsComObjectCreated(hoEmail))) Begin
        Send CreateComObject of hoEmail
    End

    //  Normally the POP3 server assigns this; we set it here for demonstration.
    Send ComAddHeaderField To hoEmail "X-UIDL" "0000000123abcdef"

    Get ComUidl Of hoEmail To sTemp1
    Showln "Uidl = " sTemp1


End_Procedure