gpt4 book ai didi

c# - 使用 .NET 从邮件帐户获取附件

转载 作者:行者123 更新时间:2023-11-30 15:10:41 26 4
gpt4 key购买 nike

我想要一个免费的 .NET 库,以通过 imap4(不一定)从帐户(例如 gMail 或其他帐户)获取附件,并将它们保存在文件夹中。

理想情况下,它可以让我获得它们的列表,并且只下载一些给定的(按扩展名、名称和/或大小过滤)并且是免费的。

我已经使用 EAGetMail 的试用版完成了此操作, 但出于我尝试购买该库的无限制版本的目的,它不太合适(我不知道此功能本身是时间有限的功能之一)。

---[编辑 - 樋口]---

我正在使用以下代码:

Dim cl As New Pop3Client()
cl.UserName = "marcelo.f.ramires@gmail.com"
cl.Password = "mypassword"
cl.ServerName = "pop.gmail.com"
cl.AuthenticateMode = Pop3AuthenticateMode.Pop
cl.Ssl = False
cl.Authenticate() //takes a while, but passes even if there's a wrong password

Dim mg As Pop3Message = cl.GetMessage(1) //gives me an exception: Message = "Pop3 connection is closed"

更新:将端口设置为 995 会出现“响应超时”异常

如评论所述,我在尝试连接和获取第一封电子邮件时遇到了一些问题。有什么帮助吗?

最佳答案

好吧,我知道你指定了 IMAP4,但我想我还是会提供这个以防 POP3 是一个选项,因为它对我很有用:

http://csharpmail.codeplex.com/

此库提供对 POP3 邮件的访问,除了较新的 IMAP 之外,许多电子邮件服务(包括 Gmail)都提供这种邮件。

核心类是Pop3Client,提供ExecuteListExecuteTop等POP3函数的访问,我专门用过这个你问的是什么 -- 扫描和下载附件。

如果您认为这毕竟是您可以使用的东西并且需要进一步的指导,请告诉我。

更新:针对您更新后的问题,我有一些初步建议:

  1. 考虑将 Pop3Client.Port 属性设置为 995。我知道这是 Gmail 用于 POP3 的设置。
  2. Pop3Client.Authenticate 方法返回一个 bool 值,指示身份验证是否成功。您可以在调用方法后检查此值,以了解是否可以进一步进行。

更新 2:我在家里尝试了以下设置,它对我有用:

Using client As New Pop3Client
client.UserName = "username@gmail.com"
client.Password = "[insert password here]"
client.ServerName = "pop.gmail.com"
client.AuthenticateMode = Pop3AuthenticateMode.Pop
client.Ssl = True ' NOTICE: in your example code you have False here '
client.Port = 995
client.Authenticate()

Dim messageList = client.ExecuteList()
Console.WriteLine("# Messages: {0}", messageList.Count)
End Using

尝试这些设置,看看它们是否适合您。

更新 3:还有一件事!您确定为您的 Gmail 帐户启用 POP 吗?如果没有,您需要这样做!

  1. 在您的 Gmail 收件箱中,点击“设置”(右上角)。
  2. 在“设置”页面中,点击标有“转发和 POP/IMAP”的标签。
  3. 在 POP 下载部分,选择其中一个单选按钮以启用 POP 邮件。
  4. 点击底部的“保存更改”。

关于c# - 使用 .NET 从邮件帐户获取附件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3039946/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com