![]() |
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
(PowerBuilder) Determine the Number of Unseen Email MessagesDemonstrates how to determine how many unseen messages exist in an email account on an IMAP server. Note: This example requires Chilkat v11.0.0 or greater.
integer li_rc integer li_Success oleobject loo_Imap integer li_TotalNum integer li_FetchUids oleobject loo_MessageSet integer li_NumUnseen integer i li_Success = 0 // This example requires the Chilkat API to have been previously unlocked. // See Global Unlock Sample for sample code. loo_Imap = create oleobject li_rc = loo_Imap.ConnectToNewObject("Chilkat.Imap") if li_rc < 0 then destroy loo_Imap MessageBox("Error","Connecting to COM object failed") return end if // Connect to an IMAP server. // Use TLS loo_Imap.Ssl = 1 loo_Imap.Port = 993 li_Success = loo_Imap.Connect("imap.example.com") if li_Success = 0 then Write-Debug loo_Imap.LastErrorText destroy loo_Imap return end if // Login li_Success = loo_Imap.Login("***","***") if li_Success = 0 then Write-Debug loo_Imap.LastErrorText destroy loo_Imap return end if // Select an IMAP mailbox li_Success = loo_Imap.SelectMailbox("Inbox") if li_Success = 0 then Write-Debug loo_Imap.LastErrorText destroy loo_Imap return end if // After selecting the mailbox. the total number of emails // is immediately available: li_TotalNum = loo_Imap.NumMessages Write-Debug "Num messages = " + string(li_TotalNum) // To determine the number of unseen messages, a call // to Search is required, which returns the set of UIDs // of all unseen messages. // We can choose to fetch UIDs or sequence numbers. li_FetchUids = 1 loo_MessageSet = create oleobject li_rc = loo_MessageSet.ConnectToNewObject("Chilkat.MessageSet") li_Success = loo_Imap.QueryMbx("UNSEEN",li_FetchUids,loo_MessageSet) if li_Success = 0 then Write-Debug loo_Imap.LastErrorText destroy loo_Imap destroy loo_MessageSet return end if li_NumUnseen = loo_MessageSet.Count Write-Debug string(li_NumUnseen) Write-Debug "UIDs ----" // Display the UIDs i = 0 do while i < loo_MessageSet.Count Write-Debug string(loo_MessageSet.GetId(i)) i = i + 1 loop // Disconnect from the IMAP server. li_Success = loo_Imap.Disconnect() destroy loo_Imap destroy loo_MessageSet |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.