Windows Phone 8 的 C# IMAP SMTP 邮件客户端
Posted
技术标签:
【中文标题】Windows Phone 8 的 C# IMAP SMTP 邮件客户端【英文标题】:C# IMAP SMTP mail client for Windows Phone 8 【发布时间】:2014-06-21 02:17:13 【问题描述】:我需要一个适用于 Windows Phone 8 的邮件客户端库(IMAP 和 SMTP)或其他替代方案(如 Windows 8 中的 TcpClient、SslClient,但我没有使用 Windows Phone 8)。我谷歌了很多。请让我知道在 Windows Phone 8 上实现 IMAP 和 SMTP 邮件客户端的任何库或文章/教程。
提前致谢。
【问题讨论】:
SmtpClient 不能在 Windows Phone 8 上工作吗?至于 IMAP,周围有一些图书馆......不确定它们有多好。 WP8 连 TcpClient 都没有?然后我想你需要使用套接字,假设它们可用。由于我正在编写自己的 IMAP 库,因此我对了解 WP8 支持的内容非常感兴趣。 如果你的目标是 Windows Phone 8.1,你可以使用MailKit,但不幸的是,我的 MIME 解析器使用了 Windows Phone 8 不支持的指针 没问题,我热爱 .NET 社区,并希望回馈我能写出的最好的电子邮件库 :-) @jstedfast - 你就是男人!!!将其发布为 windows phone 8.1 的答案。真正的天才!保持良好的工作。再次感谢您! 【参考方案1】:您可以使用sockets in Windows Phone 8。显然有一个新的Windows.Networking.Sockets API 您可以尝试使用,但是基于System.Net.Sockets
的经典API 应该仍然可以工作-here's an example。
您仍然必须自己实现 IMAP 和 SMTP,除非我们尚未发现某些功能已经存在。
【讨论】:
【参考方案2】:我找到了SMTP client for WinRT 哪个对我有用
【讨论】:
【参考方案3】:我发现这个link 对于 Windows phone 8.1 非常有用
在数据模型文件夹中创建一个类似于 MailManager 的类,并将这行代码添加到您的类的顶部 using Limilabs.Mail;
并将这个 Mail.dll
库添加到您的项目中。 Read more
StorageFile imageFile = ...;
StorageFile attachmentFile = ...;
MailBuilder builder = new MailBuilder();
builder.html = @"Html with an image: <img src="" cid:lena@@example.com""="">";
MimeData image = await builder.AddVisual(imageFile);
image.ContentId = "lena@example.com";
await builder.AddAttachment(attachmentFile);
builder.To.Add(new MailBox("to@example.com"));
builder.From.Add(new MailBox("from@example.com"));
builder.Subject = "Subject";
IMail email = builder.Create();
using(Smtp smtp = new Smtp())
await smtp.Connect("smtp.server.com"); // or ConnectSSL for SSL
await smtp.UseBestLoginAsync("user", "password");
await smtp.SendMessageAsync(email);
await smtp.CloseAsync();
【讨论】:
以上是关于Windows Phone 8 的 C# IMAP SMTP 邮件客户端的主要内容,如果未能解决你的问题,请参考以下文章
如何获取方法异步 c# windows phone 8.1 的值
使用 c# 为 windows phone 8.0 编程录音机
windows phone 8.1 调用rest api c#