Sample code for 30+ languages & platforms
Visual Basic 6.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 Visual Basic 6.0 Downloads

Visual Basic 6.0
Dim success As Long
success = 0

' 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 New ChilkatImap

' Turn on session logging:
imap.KeepSessionLog = 1

' Connect to an IMAP server.
' Use TLS
imap.Ssl = 1
imap.Port = 993
success = imap.Connect("imap.example.com")
If (success = 0) Then
    Debug.Print imap.LastErrorText
    Exit Sub
End If

' Login
success = imap.Login("myLogin","myPassword")
If (success = 0) Then
    Debug.Print imap.LastErrorText
    Exit Sub
End If

' Select an IMAP mailbox
success = imap.SelectMailbox("Inbox")
If (success = 0) Then
    Debug.Print imap.LastErrorText
    Exit Sub
End If

Dim fetchUids As Long
fetchUids = 1
' Get the message IDs for all emails having "FTP2" in the subject.
Dim messageSet As New MessageSet
success = imap.QueryMbx("SUBJECT FTP2",fetchUids,messageSet)
If (success = 0) Then
    Debug.Print imap.LastErrorText
    Exit Sub
End If

' Set the Deleted flag for each message:
success = imap.SetFlags(messageSet,"Deleted",1)
If (success = 0) Then
    Debug.Print imap.LastErrorText
    Exit Sub
End If

' Expunge and close the mailbox.
success = imap.ExpungeAndClose()
If (success = 0) Then
    Debug.Print imap.LastErrorText
    Exit Sub
End If

' Display the session log.
Debug.Print imap.SessionLog

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