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
(Delphi DLL) Find the "Sent" IMAP MailboxFind the "Sent" IMAP mailbox. Also finds the Junk and Trash mailboxes..
uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Imap, Mailboxes; ... procedure TForm1.Button1Click(Sender: TObject); var imap: HCkImap; success: Boolean; refName: PWideChar; wildcardedMailbox: PWideChar; mboxes: HCkMailboxes; i: Integer; begin // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. imap := CkImap_Create(); CkImap_putSsl(imap,True); CkImap_putPort(imap,993); success := CkImap_Connect(imap,'imap.yourmailserver.com'); if (success <> True) then begin Memo1.Lines.Add(CkImap__lastErrorText(imap)); Exit; end; // Login or authenticate in some way.. success := CkImap_Login(imap,'your_login','your_password'); if (success <> True) then begin Memo1.Lines.Add(CkImap__lastErrorText(imap)); Exit; end; // Get the list of mailboxes. refName := ''; wildcardedMailbox := '*'; mboxes := CkImap_ListMailboxes(imap,refName,wildcardedMailbox); if (CkImap_getLastMethodSuccess(imap) = False) then begin Memo1.Lines.Add(CkImap__lastErrorText(imap)); Exit; end; // The mailbox with the "/Sent" flag is the "Sent" mailbox. // Likewise for Junk and Trash.. i := 0; while i < CkMailboxes_getCount(mboxes) do begin if (CkMailboxes_HasFlag(mboxes,i,'\\Sent') = True) then begin Memo1.Lines.Add('Sent mailbox: ' + CkMailboxes__getName(mboxes,i)); end; if (CkMailboxes_HasFlag(mboxes,i,'\\Junk') = True) then begin Memo1.Lines.Add('Junk mailbox: ' + CkMailboxes__getName(mboxes,i)); end; if (CkMailboxes_HasFlag(mboxes,i,'\\Trash') = True) then begin Memo1.Lines.Add('Trash mailbox: ' + CkMailboxes__getName(mboxes,i)); end; i := i + 1; end; // Disconnect from the IMAP server. success := CkImap_Disconnect(imap); CkMailboxes_Dispose(mboxes); CkImap_Dispose(imap); end; |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.