JMail自定义邮件头信息的BUG

本文介绍了一种在邮件服务器上实现消息系统的方法,并探讨了如何通过自定义邮件头信息进行消息分类。文章详细记录了使用JMail库在.NET Framework 2.0环境下设置自定义邮件头遇到的问题及解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        问题是这样的,我想使用邮件服务器来实现一个消息系统,不过我的消息需要自定义的分类,于是在邮件头信息中加入一个自定义的字段:

Message message = new Message();
message.From 
= "sss";
message.AddRecipient(
"brookes@mail.mydomain.com"nullnull);
message.MailServerUserName 
= "brookes";
message.MailServerPassWord 
= "password";

//加入自定义头信息
   message.AddHeader(
   message.Subject = "xxxxxxxxxx";
message.Send(
"mail.mydomain.com",false);
"MY-TYPE""BROOKES LUAN");

        这样,我就可以在读取邮件的时候,先读取头信息,然后再通过判断这个头信息,决定进行下面相应的分类处理。由于使用message.Headers.GetHeader("X-MY-TYPE")得到的头信息是加密过的,看JMail的文档,使用message.DecodeHeader("X-MY-TYPE"),结果。。。,得到的是faal error!

       查了很多地方,包括Dimac官方,没有更进一步的资料,只好放弃。改用在发送的时候,指定message.ISOEncodeHeaders = false暂时解决了这个问题。我出问题的使用环境是.Net Framework2.0+JMail4.4 Professional。以后有时间研究一下。

      另外,发现JMmail一个让人无语的设定。发送的时候指定Header的名字不需要前面的“X-”,而到了读取的时候就必须加上这个前缀,也是个BUG?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值