Chilkat HOME Android™ ASP Visual Basic VB.NET C# iOS (IPhone) Objective-C C++ C Unicode C++ Unicode C MFC Delphi DLL Delphi ActiveX FoxPro Java Perl PHP Extension PHP ActiveX Python PowerShell Ruby SQL Server VBScript
|
(PowerShell) Delete All IMAP EmailDemonstrates two ways to delete all email in a mailbox on an IMAP server. Download: Chilkat .NET Assemblies [Reflection.Assembly]::LoadFile("C:\myAssemblies\ChilkatDotNet2.dll") $imap = New-Object Chilkat.Imap # Anything unlocks the component and begins a fully-functional 30-day trial. $success = $imap.UnlockComponent("Anything for 30-day trial") if ($success -ne $true) { $($imap.LastErrorText) exit } # Turn on session logging: $imap.KeepSessionLog = $true # Connect to an IMAP server. $success = $imap.Connect("mail.chilkatsoft.com") if ($success -ne $true) { $($imap.LastErrorText) exit } # Login $success = $imap.Login("myLogin","myPassword") if ($success -ne $true) { $($imap.LastErrorText) exit } # Select an IMAP mailbox $success = $imap.SelectMailbox("Inbox.RubyMail") if ($success -ne $true) { $($imap.LastErrorText) exit } # Get the complete set of Uids for email in the selected mailbox. $messageSet = $imap.GetAllUids() if ($messageSet -eq $null ) { $($imap.LastErrorText) exit } # Set the Deleted flag for each message. # (ExpungeAndClose must be called to finalize the delete.) $success = $imap.SetFlags($messageSet,"Deleted",1) if ($success -ne $true) { $($imap.LastErrorText) exit } # Alternatively, the Deleted flag may be set for each UID # individiually, but this is less efficient: $n = $messageSet.Count for ($i = 0; $i -le $n - 1; $i++) { $success = $imap.SetFlag($messageSet.GetId($i),$messageSet.HasUids,"Deleted",1) if ($success -ne $true) { $($imap.LastErrorText) exit } } # Expunge and close the mailbox. $success = $imap.ExpungeAndClose() if ($success -ne $true) { $($imap.LastErrorText) exit } # Display the session log. $($imap.SessionLog) # Disconnect from the IMAP server. $imap.Disconnect() |
© 2000-2013 Chilkat Software, Inc. All Rights Reserved.