问题描述
System.Net.Mail.SmtpClientclient=newSmtpClient("smtp.163.com");client.UseDefaultCredentials=false;client.Credentials=newSystem.Net.NetworkCredential("***@163.com","*******");client.DeliveryMethod=SmtpDeliveryMethod.Network;stringstrmail="***@qq.com";stringstrsbuject="zhutizhuti";stringstrbody="zhengwen";stringattach="fujian";MailAddressaddressFrom=newMailAddress("***@163.com","张三");MailAddressaddressTo=newMailAddress(strmail,"李四");System.Net.Mail.MailMessagemessage=newMailMessage(addressFrom,addressTo);message.Subject=strsbuject;message.Body=strbody;message.Attachments.Add(newAttachment(attach));message.Sender=newMailAddress("***@163.com");message.BodyEncoding=System.Text.Encoding.UTF8;message.IsBodyHtml=true;client.Send(message);
发现有的附件接收到会乱码并且打不开,问题找到是因为附件名字太长,会进行二次编码出错,有一个解决办法就是把.NetFramework更新到4.5,但是这边需要用小程序的电脑是XP系统,最高只能到4.0,有什么办法可以在代码上跳过这个问题?附件名字不改变的情况下。
解决方案
解决方案二:
把附件名字压缩吧..没办法了..
解决方案三:
引用1楼l2999019的回复:
把附件名字压缩吧..没办法了..
这是最没办法的办法了,就没有其他办法了吗