Sample code for 30+ languages & platforms
B4X Requires Chilkat v11.0.0+

Delete IMAP Email

To delete an email, the "Deleted" flag must be set to 1 for each message to be deleted. You must also call Expunge or ExpungeAndClose to remove the emails marked as deleted.

Chilkat B4X Downloads

B4X
Dim success As Boolean = False

'  This example assumes the Chilkat API to have been previously unlocked.
'  See Global Unlock Sample for sample code.

'  This example deletes email matching a criteria from Inbox.
Dim imap As ChilkatImap
imap.Initialize("imap")

'  Turn on session logging:
imap.KeepSessionLog = True

'  Connect to an IMAP server.
'  Use TLS
imap.Ssl = True
imap.Port = 993
success = imap.Connect("imap.example.com")
If success = False Then
    Log(imap.LastErrorText)
    Return
End If


'  Login
success = imap.Login("myLogin", "myPassword")
If success = False Then
    Log(imap.LastErrorText)
    Return
End If


'  Select an IMAP mailbox
success = imap.SelectMailbox("Inbox")
If success = False Then
    Log(imap.LastErrorText)
    Return
End If


Dim fetchUids As Boolean = True
'  Get the message IDs for all emails having "FTP2" in the subject.
Dim messageSet As ChilkatMessageSet
messageSet.Initialize
success = imap.QueryMbx("SUBJECT FTP2", fetchUids, messageSet)
If success = False Then
    Log(imap.LastErrorText)
    Return
End If


'  Set the Deleted flag for each message:
success = imap.SetFlags(messageSet, "Deleted", 1)
If success = False Then
    Log(imap.LastErrorText)
    Return
End If


'  Expunge and close the mailbox.
success = imap.ExpungeAndClose
If success = False Then
    Log(imap.LastErrorText)
    Return
End If


'  Display the session log.
Log(imap.SessionLog)

'  Disconnect from the IMAP server.
success = imap.Disconnect