有谁遇到过这种问题没有?有解决过的请帮帮我吧

解决方案 »

  1.   

    如何给主题编码?
    MailMessage只提供了SubjectEncoding属性来设置主题的编码
      

  2.   

    刚试了一下,简单的没什么问题啊SmtpClient client = new SmtpClient();
                    MailMessage message = new MailMessage();
                    message.To.Add("****@***.**.**");
                    message.Subject = "test01234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789";
                    client.Send(message);你需要给出更多信息。
    你的主题是否编码?
    是否是你使用的smtp server有些限制?
      

  3.   

    你加点中文再试试
    比方说下面这段就不行ccccccccccccccccc监控系统查询名称为:\"001005 新股提示 001006 配股提示001027 基金发行提示001032 操盘必读, 每个交易日天早上8:20应该更新完毕,什么原因我搞不懂\"编号为:的监控规则发生异常
      

  4.   

    我是有设置SubjectEncoding的 所以不是中文的问题 上面那段只要长度再减几个字就可以发了
      

  5.   


    给你的链接中有例子:
    public static string ConvertHeaderToBase64(string s, string charset)
      

  6.   

    再试了下中文的也是可以的。对了,我用的vs2005 .net 2.0SmtpClient client = new SmtpClient();
                    MailMessage message = new MailMessage();
                    message.SubjectEncoding = UTF8Encoding.UTF8;
                    message.To.Add("****@****.**.**");
                    message.Subject = "test一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十";
                    client.Send(message);
      

  7.   

    我这里可以,我使用我们单位自己的smtp服务器,发送单位的邮箱里
    SmtpClient client = new SmtpClient();
                    MailMessage message = new MailMessage();
                    message.SubjectEncoding = UTF8Encoding.UTF8;
                    message.To.Add("[email protected]");
                    message.Subject = "ccccccccccccccccc监控系统查询名称为:\"001005 新股提示 001006 配股提示001027 基金发行提示001032 操盘必读, 每个交易日天早上8:20应该更新完毕,什么原因我搞不懂\"编号为:的监控规则发生异常";
                    client.Send(message);
      

  8.   

    发到Gmail邮箱里也是正常的。要不你试一试别的smtp服务器,
    或者试一下发到别的邮箱里。
      

  9.   

    奇怪了 我这里确实只要标题超过一定长度就会乱码 短一点就完全没事
    smtp server会有这种限制? 我去问问公司的系统运行部先。。感谢findcaiyzh热心的回答
      

  10.   

    给你发邮件报异常 显示这个“邮箱不可用。 服务器响应为: 5.7.1 Unable to relay”
      

  11.   

    我设置了SmtpClient的账户和密码之后可以发了  你收到没?
      

  12.   

    應該是smtp設置的問題吧 
    我的可以發。
    但是就是反應慢 
      

  13.   

    我用的outlook  你那里乱码没?
      

  14.   

    我在Gmail的网页上看的。
    你知道outlook怎么看邮件原文吗?
    如果能看的话,看你收到的128个1的邮件原文的主题。
    如果和下面的一样就是outlook解码的问题了。Subject: =?utf-8?B?MTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMTExMQ==?=
      

  15.   

    这次你用的
    GB18030方式编码,而且没有用base64,而是Quote-Printable
      

  16.   

    含中文 且字节数(System.Text.Encoding.Default.GetByteCount() )超过184的都会乱码  短一点就不会。
      

  17.   

    事这样的
    =?utf-7?Q?+dtFjp3z7ft9n5YviVA158E46dtFjp3z7ft9n5YviVA158E46dtFjp3z7ft9n5YviVA158E46dtFjp3z7ft9n5YviVA158E46dtFjp3z7ft9n5YviVA158E46dtFjp3z7ft9n5YviVA158E46dtFjp3z7ft9n5YviVA158E46dtFjp3z7ft9n5YviVA158E46dtFjp3z7ft9n5YviVA158E46dtFjp3z7ft9n5YviVA158E46d...
      

  18.   

    又收到你的邮件,在gmail中看是:监控系统查询名称为监控系统查询名称为监控系统查询名称为监控系统查询名称为监控系统查询名称为监控系统查询名称为监控系统查询名称为监控系统查询名称为监控系统查询名称为监控系统查询名称为监控系统查询名称为Sujbect的原文是UTF-7编码并被Quote-Printable方式编码Subject: =?utf-7?Q?+dtFjp3z7ft9n5YviVA158E46dtFjp3z7ft9n5YviVA158E46dtFjp3z7ft9n5YviVA158E46dtFjp3z7ft9n5YviVA158E46dtFjp3z7ft9n5YviVA158E46dtFjp3z7ft9n5YviVA158E46dtFjp3z7ft9n5YviVA158E46dtFjp3z7ft9n5YviVA158E46dtFjp3z7ft9n5YviVA158E46dtFjp3z7ft9n5YviVA158E46dtFjp3z7ft9n5YviVA158E46-?=
      

  19.   

    看看你是不是这样原因:
    XADM: Message with Long Subject Cannot Be Opened by Outlook Web Access
    http://support.microsoft.com/kb/295327你贴出来的subject原文,长度正好是256
      

  20.   

    下面帖子的问题和你的问题一摸一样:)
    看jcl在2楼的回复,果然是outlook的问题
    http://stackoverflow.com/questions/454833/system-net-mail-and-utf-8bxxxxx-headers我使用的outlook2007好像已经解决这个问题了。
      

  21.   

    我用的也是outlook2007如果是outlook的原因 为什么当我用一个第三方的邮件发送dll来发同样标题的邮件时 outlook就不显示乱码了呢?
    不过jcl描述的问题应该和我的是一样的PS:本来都是用那个第三方的dll来发邮件的 只不过它不支持html格式的邮件 所以才换成MailMessage
      

  22.   

    我把你给我gmail发的邮件转发到公司信箱,用outlook2007接收,主题是可以正常显示的。
    可能编码方式不一样,mailMessage用得方法比较笨,会使得编码后的subject大于256.估计问题比较难解决了,可以试一试别再标题中方具体内容,只放概述性的东西来缩短主题。