2
我想從我的雅虎郵箱帳戶讀取電子郵件。我使用「OpenPop.Pop3」,開始讀雅虎電子郵件帳戶的電子郵件,我使用下面的代碼: -如何使用pop3讀取雅虎郵件的最新電子郵件c#
using OpenPop.Pop3;
public DataTable ReadEmailsFromId()
{
DataTable table = new DataTable();
try
{
using (Pop3Client client = new Pop3Client())
{
client.Connect("pop.mail.yahoo.com", 995, true); //For SSL
client.Authenticate("Username", "Password", AuthenticationMethod.UsernameAndPassword);
int messageCount = client.GetMessageCount();
for (int i = messageCount; i > 0; i--)
{
table.Rows.Add(client.GetMessage(i).Headers.Subject, client.GetMessage(i).Headers.DateSent);
string msdId = client.GetMessage(i).Headers.MessageId;
OpenPop.Mime.Message msg = client.GetMessage(i);
OpenPop.Mime.MessagePart plainTextPart = msg.FindFirstPlainTextVersion();
string message = plainTextPart.GetBodyAsText();
}
}
}
return table;
}
相同的代碼能夠訪問其他郵件的電子郵件,如Gmail,Outlook,但與雅虎郵件工作時電子郵件我能夠獲得主題,日期,但是當來到消息部分是:
OpenPop.Mime.Message msg = client.GetMessage(i);
OpenPop.Mime.MessagePart plainTextPart = msg.FindFirstPlainTextVersion();
它給錯誤「使用從被關閉檢索的響應流」。
這裏是「堆棧跟蹤」:
at OpenPop.Pop3.Pop3Client.IsOkResponse(String response)
at OpenPop.Pop3.Pop3Client.SendCommand(String command)
at OpenPop.Pop3.Pop3Client.Disconnect()
at OpenPop.Pop3.Pop3Client.Dispose(Boolean disposing)
at OpenPop.Pop3.Disposable.Dispose()
請讓我知道如果我失去了一些東西或者做錯了什麼。 此外,我已經使雅虎郵件電子郵件訪問任何地方使用POP。