Jamil发送邮件的具体用法:
首先,我们要从网上下载Jamil.dll的组件,这个网上很多,然后添加引用using jmail,然后再本机或者服务器上注册一下
将jmail.dll拷贝到服务器的system32目录下,开始-运行-cmd-输入regsvr32 jmail.dll,注册成功,然后写代码
代码如下(方法)
代码如下 | 复制代码 |
using jmail; jmail.MessageClass jmMessage = new jmail.MessageClass(); //设置字符集 jmMessage.Charset = "gb2312"; //发件人邮箱地址 jmMessage.From = senderMail; //发件人姓名 jmMessage.FromName = sender; //设置主题 jmMessage.Subject = subject; //设置内容 jmMessage.Body = content; // 设置收件人邮箱 jmMessage.AddRecipient(receiver, "", ""); // 设置登陆邮箱的用户名和密码 jmMessage.MailServerUserName = "ss"; jmMessage.MailServerPassWord = "ss"; //设置smtp服务器地址 if (jmMessage.Send("smtp.163.com", false)) Response.Write(""); } else Response.Write(""); } |
上面就是Jmail的具体用法!
我想放一个附件如下图
代码如下 | 复制代码 |
|
结果出现如下错误
This is a multipart message in MIME format. —-NEXT_BM_AEB3968967D044DC9E208D04088C60B4 Content-Type: text/html; charset=”GB2312″ Content-Transfer-Encoding: Quoted-Printable sdfdd —-NEXT_BM_AEB3968967D044DC9E208D04088C60B4 Content-Type: application/octet-stream; name=”=?GB2312?Q?12d95384-576f-424f-bf15-f8e2397e2791=2EJPG?=” Content-Transfer-Encoding: base64 Content-Description: =?GB2312?Q?12d95384-576f-424f-bf15-f8e2397e2791=2EJPG?= Content-Disposition: inline; filename=”=?GB2312?Q?12d95384-576f-424f-bf15-f8e2397e2791=2EJPG?=” Content-ID:
网上找了解决方法:
代码如下 | 复制代码 |
AddAttachment(FileName, isInline, ContentType) : |
String为邮件添加一个文件型的附件。如果Inline 属性被设置为true,这个附件就是一个可嵌入的附件,使用addAttachment()方法可返回content id,这在发送HTML 邮件时是非常有用的。
例:
代码如下 | 复制代码 |
jmail.AddAttachment(“c:autoexec.bat”) |
可嵌入的附件
2.AddURLAttachment(bstrURL, bstrAttachAs, isInline, bstrAuth) : String从指定的URL 下载文件并添加为附件。第二个参数“AttachAs”用来更改添加为附件的文件的文件名,如果Inline 属性被设置为true,这个附件就是一个可嵌入的附件,使用ddAttachment()方法可返回content id,这在发送HTML 邮件时是非常有用的。最后一个参数为可选项,是当服务器需要身份验证时使用的。
例
代码如下 | 复制代码 |
jmail.AddURLAttachment(“w3jmail4.exe”,”w3jmail4.exe”) jmail.AddURLAttachment”w3jmail4.exe”, “w3jmail4.exe”,false, “myUserName:myPassword”)jmail.AddURLAttachment”dimaclogo.gif”,”dimaclogo.gif”,true ) |
测了一下,好像跟两个方法没什么关系。后来在网上有人说把Message.ContentType =”text/html”设置去掉(就是不要去设置ContentType属性),试了一下,还真发送成功了