SMTP发送邮件附件乱码问题

问题描述

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的回复:

把附件名字压缩吧..没办法了..

这是最没办法的办法了,就没有其他办法了吗

时间: 2024-09-25 16:14:05

SMTP发送邮件附件乱码问题的相关文章

C#利用SMTP发送邮件的附件乱码问题

问题描述 我用网上的C#实现的SMTP发送邮件代码,在有WORD.PDF.EXCEL等附件时,有的邮件客户端会打不开.1.用网页登录邮箱收件箱直接打开会是乱码,保存到本地又可以打开2.用FOXMAIL收取时可在客户端直接打开,保存本地也可以打开,3.用公司自己的OA客户端又打不开,并且保存到本地也打不开.相关附件的实现代码如下(环境还是VS2003):完整的代码请参考:http://wenku.baidu.com/view/c41c1b4f852458fb770b56cf.htmlif(mail

Jmail发送邮件与带附件乱码解决办法分享

 这篇文章主要介绍了Jmail发送邮件与带附件乱码解决办法,有需要的朋友可以参考一下 Jamil发送邮件的具体用法:   首先,我们要先下载Jamil.dll的组件,然后添加引用using jmail,然后再本机或者服务器上注册一下   将jmail.dll拷贝到服务器的system32目录下,开始-运行-cmd-输入regsvr32 jmail.dll,注册成功,然后写代码   代码如下(方法) 代码如下: using jmail;     protected void sendMail(St

javamail smtp 发送邮件

Java代码   /*   * 邮件发送类   */   public class MailSenderUtil{            /**    * 以HTML格式发送邮件,可带附件,本方法可作为对外接口提供.    * @param mailInfo 待发送的邮件信息    * @throws MessagingException    * @throws AddressException    * @throws UnsupportedEncodingException     */ 

基于python发送邮件的乱码问题的解决办法_php技巧

公司项目中需要通过后台发送邮件,邮件内容包括图片附件.如果通过PHPmailer发送,由于邮件服务器可能存在延迟现象,通过PHPmailer发送邮件,需要等待邮件发送成功后才能返回结果,这在实践中证明,有时发送邮件无法即时返回结果,影响用户体验. 于是我通过python发送邮件,PHP通过调用脚本方式来调用,这样执行脚本成功后立即返回,而无需判断邮件是否发送成功.只要成功执行脚本文件即向客户端返回成功标志.这样极大的提高了邮件发送速度,保证良好的用户体验效果. 但是,在通过python发送邮件,

在asp.NET 中使用SMTP发送邮件的实现代码

核心代码:复制代码 代码如下: public class Mail { #region 邮件参数 static public string accountName = System.Configuration.ConfigurationManager.AppSettings["SmtpAccountName"]; static public string password = System.Configuration.ConfigurationManager.AppSettings[&

使用CDO.Message+SMTP发送邮件

smtp|发送邮件 <!--发送代码--> <% Const cdoSendUsingMethod="http://schemas.microsoft.com/cdo/configuration/sendusing" Const cdoSendUsingPort=2 Const cdoSMTPServer="http://schemas.microsoft.com/cdo/configuration/smtpserver" Const cdoSMT

使用php通过smtp发送邮件新手指南

smtp|发送邮件 由于php没有提供现成的smtp函数,却提供了一个功能不甚灵活的mail()函数,这个函数需要服务器配置上的支持,并且不支持smtp验证,在很多场合无法正常的工作,因此不建议使用.本文的目的在于为新手指明方向,并没有涉及那些高级的内容,一来本身水平有限,二来也担心不能准确的讲述相关的概念,进而对各位造成误导,还请自行深入学习.本文撰写日期是2004年7月2日,阅读时请注意时效性. "使用php发送mail"最近已经成为继"register_globals&

Python实现SMTP发送邮件详细教程_python

简介 Python发送邮件的教程本人在网站搜索的时候搜索出来了一大堆,但是都是说了一大堆原理然后就推出了实现代码,我测试用给出的代码进行发送邮件时都不成功,后面找了很久才找到原因,这都是没有一个详细的环境调试导致,所以今天特出一个详细的教程,一步一步从环境调试到代码实现整一个教程,希望对还在苦苦寻找解决方法却迟迟不能得到有效解决的人员一点帮助. SMTP协议 首先了解SMTP(简单邮件传输协议),邮件传送代理程序使用SMTP协议来发送电邮到接收者的邮件服务器.SMTP协议只能用来发送邮件,不能用

在asp.NET 中使用SMTP发送邮件的实现代码_实用技巧

核心代码: 复制代码 代码如下: public class Mail { #region 邮件参数 static public string accountName = System.Configuration.ConfigurationManager.AppSettings["SmtpAccountName"]; static public string password = System.Configuration.ConfigurationManager.AppSettings[