PureBasic
PureBasic
Compare Two Emails by UIDL
See more Email Object Examples
Demonstrates the Chilkat Email.UidlEquals method, which returns true if this email's UIDL equals the UIDL of the email passed as the argument. The comparison is meaningful for messages obtained through POP3. This example gives two emails the same UIDL and compares them.
Background: A POP3 UIDL is a stable, unique identifier a server assigns to each message in a mailbox. Comparing UIDLs is how a client decides whether two message references point to the same server message — the basis for "leave messages on server" logic, where an app downloads a message once and skips it on later checks by remembering its UIDL.
Chilkat PureBasic Downloads
IncludeFile "CkEmail.pb"
Procedure ChilkatExample()
; Demonstrates the UidlEquals method, which returns true if this email's UIDL equals the
; UIDL of the email passed as the argument. UIDLs are POP3 message identifiers.
email1.i = CkEmail::ckCreate()
If email1.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkEmail::ckAddHeaderField(email1,"X-UIDL","0000000123abcdef")
email2.i = CkEmail::ckCreate()
If email2.i = 0
Debug "Failed to create object."
ProcedureReturn
EndIf
CkEmail::ckAddHeaderField(email2,"X-UIDL","0000000123abcdef")
; Compare the two emails' UIDLs.
eq.i = CkEmail::ckUidlEquals(email1,email2)
If eq = 1
Debug "The two emails have the same UIDL."
Else
Debug "The two emails have different UIDLs."
EndIf
CkEmail::ckDispose(email1)
CkEmail::ckDispose(email2)
ProcedureReturn
EndProcedure