![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(DataFlex) Download Unread Email from IMAP MailboxDownload unread email messages from an IMAP mailbox. Note: This example requires Chilkat v11.0.0 or greater.
Use ChilkatAx-win32.pkg Procedure Test Boolean iSuccess Handle hoImap String sSeenSearch String sNotSeenSearch Boolean iFetchUids Variant vMessageSet Handle hoMessageSet Variant vBundle Handle hoBundle Boolean iHeadersOnly Variant vEmail Handle hoEmail Integer i Integer iNumEmails String sTemp1 Move False To iSuccess // This example assumes the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. Get Create (RefClass(cComChilkatImap)) To hoImap If (Not(IsComObjectCreated(hoImap))) Begin Send CreateComObject of hoImap End // Connect to an IMAP server. // Use TLS Set ComSsl Of hoImap To True Set ComPort Of hoImap To 993 Get ComConnect Of hoImap "imap.example.com" To iSuccess If (iSuccess = False) Begin Get ComLastErrorText Of hoImap To sTemp1 Showln sTemp1 Procedure_Return End // Login Get ComLogin Of hoImap "admin@chilkatsoft.com" "myPassword" To iSuccess If (iSuccess = False) Begin Get ComLastErrorText Of hoImap To sTemp1 Showln sTemp1 Procedure_Return End // Select an IMAP mailbox Get ComSelectMailbox Of hoImap "Inbox" To iSuccess If (iSuccess = False) Begin Get ComLastErrorText Of hoImap To sTemp1 Showln sTemp1 Procedure_Return End // Find emails marked as seen or not already seen: Move "SEEN" To sSeenSearch Move "NOT SEEN" To sNotSeenSearch // Get the set of unseen message UIDs Move True To iFetchUids Get Create (RefClass(cComChilkatMessageSet)) To hoMessageSet If (Not(IsComObjectCreated(hoMessageSet))) Begin Send CreateComObject of hoMessageSet End Get pvComObject of hoMessageSet to vMessageSet Get ComQueryMbx Of hoImap sNotSeenSearch iFetchUids vMessageSet To iSuccess If (iSuccess = False) Begin Get ComLastErrorText Of hoImap To sTemp1 Showln sTemp1 Procedure_Return End // Fetch the unseen emails into a bundle object: Get Create (RefClass(cComChilkatEmailBundle)) To hoBundle If (Not(IsComObjectCreated(hoBundle))) Begin Send CreateComObject of hoBundle End Move False To iHeadersOnly Get pvComObject of hoMessageSet to vMessageSet Get pvComObject of hoBundle to vBundle Get ComFetchMsgSet Of hoImap iHeadersOnly vMessageSet vBundle To iSuccess If (iSuccess = False) Begin Get ComLastErrorText Of hoImap To sTemp1 Showln sTemp1 Procedure_Return End // Display the Subject and From of each email. Get Create (RefClass(cComChilkatEmail)) To hoEmail If (Not(IsComObjectCreated(hoEmail))) Begin Send CreateComObject of hoEmail End Move 0 To i Get ComMessageCount Of hoBundle To iNumEmails While (i < iNumEmails) Get pvComObject of hoEmail to vEmail Get ComEmailAt Of hoBundle i vEmail To iSuccess Get ComGetHeaderField Of hoEmail "Date" To sTemp1 Showln sTemp1 Get ComSubject Of hoEmail To sTemp1 Showln sTemp1 Get ComFrom Of hoEmail To sTemp1 Showln sTemp1 Showln "--" Move (i + 1) To i Loop // Disconnect from the IMAP server. Get ComDisconnect Of hoImap To iSuccess End_Procedure |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.