0 votes
by (120 points)

I understand that to read another user's Inbox I need to login with AUTHENTICATINGUSER + '\0' + MAILBOXUSER.

This appears to be working because the connect and login returns fine. But I still receive an error from Imap.SelectFolder("Inbox").

The code used to run fine but it may be that the Exchange servers are now clustered or something to cause IMAP Referrals to be sent back (I'm guessing). But is there a way to be sure, and what would I do about it? Here's the stack trace I get back. Not sure how to go about troubleshooting this.

Rebex.Net.ImapException occurred HResult=-2146233088 Message=There is no replica for that mailbox on this server (NO). Source=Rebex.Imap ProtocolCode=No ProtocolMessage=There is no replica for that mailbox on this server. 
at Rebex.Net.Imap.1djEnpZ(String , ImapResponse , Boolean )
at Rebex.Net.Imap.1djEnpZ(String , ImapResponse ) 
at Rebex.Net.Imap.2Dt7i1Z(String , Object[] ) 
at Rebex.Net.Imap.1497pWZ(String , Boolean ) 
at Rebex.Net.Imap.SelectFolder(String folder, Boolean readOnly) 
at Rebex.Net.Imap.SelectFolder(String folder) 
at ImapDownload.Program.Main(String[] args)

Many thanks in advance,

Applies to: Rebex Secure Mail

1 Answer

0 votes
by (146k points)

Yes, this error message most likely indicates that the Exchange server believes the mailbox is stored on another Exchange server and most likely sent an IMAP Referral back first, but these are not yet handled automatically by Rebex Secure Mail's Imap object.

To see the referral, please create a communication log using Imap object's LogWriter property - it should be clearly visible in the log (post it here or mail it to support@rebex.net if in doubt).