![]() |
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) Office365 IMAP List MailboxesSee more Office365 ExamplesList the Office365 IMAP mailboxes.Note: This example requires Chilkat v11.0.0 or greater.
integer li_rc integer li_Success oleobject loo_JsonToken oleobject loo_Imap string ls_RefName string ls_WildcardedMailbox integer li_Subscribed oleobject loo_Mboxes integer i li_Success = 0 // An Office365 OAuth2 access token must first be obtained prior // to running this code. // Getting the OAuth2 access token for the 1st time requires the O365 account owner's // interactive authorizaition via a web browser. Afterwards, the access token // can be repeatedly refreshed automatically. // See the following examples for getting and refreshing an OAuth2 access token // Get Office365 SMTP/IMAP/POP3 OAuth2 Access Token // Refresh Office365 SMTP/IMAP/POP3 OAuth2 Access Token // First get our previously obtained OAuth2 access token. loo_JsonToken = create oleobject li_rc = loo_JsonToken.ConnectToNewObject("Chilkat.JsonObject") if li_rc < 0 then destroy loo_JsonToken MessageBox("Error","Connecting to COM object failed") return end if li_Success = loo_JsonToken.LoadFile("qa_data/tokens/office365.json") if li_Success = 0 then Write-Debug "Failed to open the office365 OAuth JSON file." destroy loo_JsonToken return end if loo_Imap = create oleobject li_rc = loo_Imap.ConnectToNewObject("Chilkat.Imap") loo_Imap.Ssl = 1 loo_Imap.Port = 993 // Connect to the Office365 IMAP server. li_Success = loo_Imap.Connect("outlook.office365.com") if li_Success = 0 then Write-Debug loo_Imap.LastErrorText destroy loo_JsonToken destroy loo_Imap return end if // Use OAuth2 authentication. loo_Imap.AuthMethod = "XOAUTH2" // Login using our username (i.e. email address) and the access token for the password. li_Success = loo_Imap.Login("OFFICE365_EMAIL_ADDRESS",loo_JsonToken.StringOf("access_token")) if li_Success = 0 then Write-Debug loo_Imap.LastErrorText destroy loo_JsonToken destroy loo_Imap return end if Write-Debug "O365 OAuth authentication is successful." // Get the list of mailboxes. ls_RefName = "" ls_WildcardedMailbox = "*" li_Subscribed = 0 loo_Mboxes = create oleobject li_rc = loo_Mboxes.ConnectToNewObject("Chilkat.Mailboxes") li_Success = loo_Imap.MbxList(li_Subscribed,ls_RefName,ls_WildcardedMailbox,loo_Mboxes) if li_Success = 0 then Write-Debug loo_Imap.LastErrorText destroy loo_JsonToken destroy loo_Imap destroy loo_Mboxes return end if i = 0 do while i < loo_Mboxes.Count Write-Debug loo_Mboxes.GetName(i) i = i + 1 loop // Sample output looks like this: // Archive // Calendar // Calendar/Birthdays // Calendar/United States holidays // Contacts // Conversation History // Deleted Items // Drafts // INBOX // INBOX/abc // INBOX/misc // INBOX/misc/birdeye // INBOX/old // INBOX/old/large // INBOX/receipts // Journal // Junk Email // Notes // Outbox // RSS Subscriptions // Sent Items // Sync Issues // Sync Issues/Conflicts // Sync Issues/Local Failures // Sync Issues/Server Failures // Tasks // Trash // Disconnect from the IMAP server. li_Success = loo_Imap.Disconnect() destroy loo_JsonToken destroy loo_Imap destroy loo_Mboxes |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.