1年前、ミッチェルセラーズは関連する質問をしました...
カスタムアプリケーション内でメールメッセージを送受信するためにGoogleIMAPにアクセスしたいと思います。
重要なのは、サードパーティのコントロールを使用したくないということです。
.Net Frameworkの新しいバージョンはIMAPをサポートしていますか?どのようなオプションがありますか?
以前は、C#および.NETに移植されたBorlandDelphi用のIndyコンポーネントがありました。
私の知る限り、これに対するネイティブサポートはありません。
IMAPに対する.NETFrameworkのサポートはありません。サードパーティのコンポーネントを使用する必要があります。
Mail.dll電子メールコンポーネントを試してみてください、それは非常に手頃な価格で使いやすいです:
using(Imap imap = new Imap())
{
imap.Connect("imapServer");
imap.Login("user", "password");
imap.SelectInbox();
List<long> uids = imap.SearchFlag(Flag.Unseen);
foreach (long uid in uids)
{
string eml = imap.GetMessageByUID(uid);
IMail message = new MailBuilder()
.CreateFromEml(eml);
Console.WriteLine(message.Subject);
Console.WriteLine(message.TextDataString);
}
imap.Close(true);
}
ここからダウンロードできます:http://www.lesnikowski.com/mail/。
現在のバージョンの.NETにはIMAPのサポートはなく、フレームワークにそのようなサポートを追加する計画については聞いたことがありません。サードパーティのコンポーネントの1つを試す必要があります。
あなたは私たちのRebexセキュアメールをチェックすることができます。
Inbox
次のコードは、フォルダからメッセージをダウンロードする方法を示しています。
// create client, connect and log in
Imap client = new Imap();
client.Connect("imap.example.org");
client.Login("username", "password");
// select folder
client.SelectFolder("Inbox");
// get message list
ImapMessageCollection list = client.GetMessageList(ImapListFields.Fast);
if (list.Count == 0)
{
Console.WriteLine("There are no messages in the mailbox.");
}
else
{
// download the first message
MailMessage message = client.GetMailMessage(list[0].SequenceNumber);
...
}
試用版はwww.rebex.net/secure-mail.net/からダウンロードできます。
このサイトと同様のエンジンで実行されるRebexQ&Aフォーラムもお楽しみいただけます。