0

IMAP の使用 - 共有の「ユーザー」名前空間の下に、「.」で始まる多くの共有メールボックスがあります。デリミタ。

これらの共有メールボックスを Exchange サーバーに移行するソフトウェアを作成しようとしています。

IMAP サーバーが SELECT に対して NO と応答する「ユーザー」共有名前空間内の特定のメールボックス/フォルダーを開こうとしています。以下のコメント付きの抜粋を使用して開くと、Inbox は問題なく動作します。おそらく、'root/base-user フォルダー' にアクセスできないため、子フォルダーを指定する必要があるため、問題の共有メールボックスに接続する方法がわかりません。たとえば、「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);
        }
    }
}
4

1 に答える 1