现在的位置: 首页 > 综合 > 正文

JMail自定义邮件头信息的BUG

2013年04月20日 ⁄ 综合 ⁄ 共 794字 ⁄ 字号 评论关闭

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

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?

抱歉!评论已关闭.