Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Perl) Delete All IMAP EmailDemonstrates two ways to delete all email in a mailbox on an IMAP server.
use chilkat(); # This example requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. $imap = chilkat::CkImap->new(); # Turn on session logging: $imap->put_KeepSessionLog(1); # Connect to an IMAP server. # Use TLS $imap->put_Ssl(1); $imap->put_Port(993); $success = $imap->Connect("imap.someMailServer.com"); if ($success != 1) { print $imap->lastErrorText() . "\r\n"; exit; } # Login $success = $imap->Login("myLogin","myPassword"); if ($success != 1) { print $imap->lastErrorText() . "\r\n"; exit; } # Select an IMAP mailbox $success = $imap->SelectMailbox("Inbox.RubyMail"); if ($success != 1) { print $imap->lastErrorText() . "\r\n"; exit; } # Get the complete set of Uids for email in the selected mailbox. # messageSet is a MessageSet $messageSet = $imap->GetAllUids(); if ($imap->get_LastMethodSuccess() != 1) { print $imap->lastErrorText() . "\r\n"; exit; } # Set the Deleted flag for each message. # (ExpungeAndClose must be called to finalize the delete.) $success = $imap->SetFlags($messageSet,"Deleted",1); if ($success != 1) { print $imap->lastErrorText() . "\r\n"; exit; } # Alternatively, the Deleted flag may be set for each UID # individiually, but this is less efficient: $n = $messageSet->get_Count(); for ($i = 0; $i <= $n - 1; $i++) { $success = $imap->SetFlag($messageSet->GetId($i),$messageSet->get_HasUids(),"Deleted",1); if ($success != 1) { print $imap->lastErrorText() . "\r\n"; exit; } } # Expunge and close the mailbox. $success = $imap->ExpungeAndClose(); if ($success != 1) { print $imap->lastErrorText() . "\r\n"; exit; } # Display the session log. print $imap->sessionLog() . "\r\n"; # Disconnect from the IMAP server. $success = $imap->Disconnect(); |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.