当前位置:编程学习 > C#/ASP.NET >>

关于用JMail组件发邮件问题?

关于用JMail组件发邮件问题,提示如下出错信息,请问是怎么回事?
The message was undeliverable. All servers failed to receive the message  --------------------编程问答-------------------- 发送信息失败了。
估计是配置有问题了。

给你一个可以用的(至少我的测试通过了,在项目中要引用一个Interop.CDO.dll文件,因为你要用到cdo发送邮件。):
public static void CDOsendmail(string from, string to, string subject,
string body, string userName, string password, string smtpServer)
{
//声明新的邮件实例
CDO.Message Msg = new CDO.Message();
//分别设置发送人、收信人、主题、内容
Msg.From =from;
Msg.To = to;
Msg.Subject = subject;
Msg.HTMLBody = "<html><body>"+body
+"</body></html>";
//设置发送参数,包括smtpServer,用户名,密码
CDO.IConfiguration Config = Msg.Configuration;
ADODB.Fields oFields = Config.Fields;
oFields["http://schemas.microsoft.com/cdo/configuration/sendusing"].Value = 2;
oFields["http://schemas.microsoft.com/cdo/configuration/sendusername"].Value=userName;
oFields["http://schemas.microsoft.com/cdo/configuration/sendpassword"].Value=password; 
oFields["http://schemas.microsoft.com/cdo/configuration/smtpauthenticate"].Value=1;
oFields["http://schemas.microsoft.com/cdo/configuration/languagecode"].Value=0x0804;
oFields["http://schemas.microsoft.com/cdo/configuration/smtpserver"].Value=smtpServer;
oFields.Update();
//字符格式
Msg.BodyPart.Charset = "gb2312";
Msg.HTMLBodyPart.Charset = "gb2312";
//发送
Msg.Send();
Msg = null;
} --------------------编程问答-------------------- 楼上说的只是程序代码,其实你下载的jmail组件要配置一下,不是拿来就能用的!具体配置的命令我一时想不起来,可以去我QQ空间看! --------------------编程问答-------------------- 帮顶! --------------------编程问答-------------------- 原因有三:
     发件人邮箱和密码是否正确。
     JMail.dll是否注册  用 regsvr32 jmail.dll
    SMTP 服务是否启用
补充:.NET技术 ,  ASP.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,