C# POP3客户端错误:";7不支持对名称进行编码“;
我有一个打开邮箱的代码。这是代码:C# POP3客户端错误:";7不支持对名称进行编码“;,c#,email,pop3,C#,Email,Pop3,我有一个打开邮箱的代码。这是代码: private Pop3Client GetPop3Client() { Pop3Client popClient = new Pop3Client(); popClient.Connect("smtp.xxxxxxxxx.xxxx.xx", 110, false); popClient.Authenticate("username", "passowrd"); return popClient;
private Pop3Client GetPop3Client()
{
Pop3Client popClient = new Pop3Client();
popClient.Connect("smtp.xxxxxxxxx.xxxx.xx", 110, false);
popClient.Authenticate("username", "passowrd");
return popClient;
}
Message message = popClient.GetMessage(1);
所以,在这行:
private Pop3Client GetPop3Client()
{
Pop3Client popClient = new Pop3Client();
popClient.Connect("smtp.xxxxxxxxx.xxxx.xx", 110, false);
popClient.Authenticate("username", "passowrd");
return popClient;
}
Message message = popClient.GetMessage(1);
发生此错误:
private Pop3Client GetPop3Client()
{
Pop3Client popClient = new Pop3Client();
popClient.Connect("smtp.xxxxxxxxx.xxxx.xx", 110, false);
popClient.Authenticate("username", "passowrd");
return popClient;
}
Message message = popClient.GetMessage(1);
“7bit”不是受支持的编码名称。参数名称:名称位于
System.Globalization.EncodingTable.internalGetCodePageFromName(字符串
名称)位于System.Globalization.EncodingTable.GetCodePageFromName(字符串
姓名)在
OpenPop.Mime.Header.HeaderFieldParser.ParseCharsetToEncoding(字符串
OpenPop.Mime.MessagePart.ParseBodyEncoding(字符串)中的字符集
OpenPop.Mime.MessagePart..ctor(字节[]rawBody,
MessageHeader(消息头)位于
位于的OpenPop.Mime.MessagePart.ParseMultiPartBody(字节[]rawBody)
位于的OpenPop.Mime.MessagePart.ParseBody(字节[]rawBody)
OpenPop.Mime.MessagePart..ctor(字节[]rawBody,MessageHeader)
在OpenPop.Mime.Message..ctor(字节[]rawMessageContent,布尔值
在OpenPop.Pop3.Pop3Client.GetMessage(Int32 messageNumber)中的parseBody)
在中的DocumentCenter.Repository.ProcessMessage.ReadAllInMailBox()中
C:\dsn\net\project\project.Repository\ProcessMessage.cs:第414行
如何修复它?由于()具有与OpenPOP类似的API,您可以尝试切换到MailKit,因为它没有这个问题(在解析消息时它会正确处理错误的字符编码名称)
如果您不想更改为MailKit,则需要编辑OpenPOP的源代码并修复OpenPOP.Mime.Header.HeaderFieldParser.ParseCharSetToEncode(),以正确处理错误的字符集名称。可能重复的