【发布时间】:2015-11-23 08:43:11
【问题描述】:
使用 IMAP - 我们在共享 'user' 命名空间下有许多共享邮箱,带有 '.'分隔符。
我正在尝试编写一些将这些共享邮箱迁移到 Exchange 服务器的软件。
我正在尝试在“用户”共享命名空间中打开特定邮箱/文件夹,IMAP 服务器对 SELECT 响应“否”。使用下面的评论摘录打开,收件箱工作得很好。可能是因为我无权访问“根/基本用户文件夹”,但我需要指定子文件夹,我不知道如何连接到有问题的共享邮箱。例如它会是'user.sharedmailboxA'
请原谅我的术语,IMAP 的菜鸟!谢谢
以下代码除了“NO”外,大概是当我尝试使用 Open 方法时访问被拒绝:
static void Main(string[] args)
{
using (var client = new ImapClient())
{
client.Connect("imap.c.com", 993, true);
// Note: since we don't have an OAuth2 token, disable
// the XOAUTH2 authentication mechanism.
client.AuthenticationMechanisms.Remove("XOAUTH2");
client.Authenticate("aa", "sdfdsf");
var user_namespace = client.GetFolder(client.SharedNamespaces[0] );
user_namespace.Open(FolderAccess.ReadOnly);
// The Inbox folder is always available on all IMAP servers...
//var inbox = client.Inbox;
//inbox.Open(FolderAccess.ReadOnly);
//Console.WriteLine("Total messages: {0}", inbox.Count);
//Console.WriteLine("Recent messages: {0}", inbox.Recent);
//for (int i = 0; i < inbox.Count; i++)
//{
// var message = inbox.GetMessage(i);
// Console.WriteLine("Subject: {0}", message.Subject);
//}
//client.Disconnect(true);
}
}
}
【问题讨论】: