解读邮件发送CDO.Message错误
2024-07-21 02:25:31
供稿:网友
喜欢上c#,再也没有理由离开它去学另一种语言,asp中可以方便的调用cdo并附上账
号和密码来发送邮件,但system.web.mail命名空间里却并未让我等到输入用户名和密
码的属性,没有验证就会出现:cdo.message调用失败。在观看了别的同仁的文章,试了一个果然见效,在此与大家分享一下。
由于在.net平台上并不在于程序写多少,更不在于用什么语言去表达,重要的似乎是思
想,所以我喜欢c#也只用c#写这几句代码吧,vb.net与j#的朋友可以稍微改一下即
可用了......
private static int gotosendmail(string body,string to)
{
try
{
system.web.mail.mailmessage mm=new system.web.mail.mailmessage();
mm.bodyformat=system.web.mail.mailformat.html;
mm.from="[email protected]";
mm.to=to;
mm.bodyencoding=system.text.encoding.getencoding(936);
mm.subject="您好!我是梦猫.net工作室希望与您携手一起成长。";
mm.body=body;
mm.fields["http://schemas.microsoft.com/cdo/configuration/sendusing"] =
2;
mm.fields
["http://schemas.microsoft.com/cdo/configuration/sendemailaddress"] =
"[email protected]";//发送地址;如果mm.from写了这儿可以不写这句
mm.fields
["http://schemas.microsoft.com/cdo/configuration/smtpaccountname"] =
"[email protected]";
mm.fields["http://schemas.microsoft.com/cdo/configuration/sendusername"]
= "xxx";//验证账号:发送者邮箱账号
mm.fields["http://schemas.microsoft.com/cdo/configuration/sendpassword"]
= "xxxpass"; //验证密码:发送者邮箱密码
mm.fields
["http://schemas.microsoft.com/cdo/configuration/smtpauthenticate"] = 1; //
验证级别0,1,2
mm.fields["http://schemas.microsoft.com/cdo/configuration/languagecode"]
= 0x0804;//语言代码
mm.fields["http://schemas.microsoft.com/cdo/configuration/smtpserver"] =
"smtp.xxx.com"; //smtp server
system.web.mail.smtpmail.smtpserver="smtp.xxx.com";//上句和这句重着,这
句可以替代上句
system.web.mail.smtpmail.send(mm);
return 0;
}
catch(system.exception e)
{
response.write(e.message+e.stacktrace+e.source);
return -1;
}
}
本程序在xp和2000server iis6上均通过