使用SmtpMail.Send方法发生错误,怎么办?

hewenchun 2003-12-02 06:01:58
我使用SmtpMail.Send(String, String, String, String)执行发送邮件,页面提示: “SendUsing”配置值无效。是什么原因,该如何配置?谢谢!
页面如下:


“/BookShop2003”应用程序中的服务器错误。
--------------------------------------------------------------------------------

“SendUsing”配置值无效。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.Runtime.InteropServices.COMException: “SendUsing”配置值无效。

源错误:


行 83: private void Button1_Click(object sender, System.EventArgs e)
行 84: {
行 85: System.Web.Mail.SmtpMail.Send(this.txb1.Text,this.txb2.Text,this.txb3.Text,this.txb4.Text);
行 86: }
行 87:


源文件: c:\inetpub\wwwroot\bookshop2003\webform2.aspx.cs 行: 85

堆栈跟踪:


[COMException (0x80040220): “SendUsing”配置值无效。
]

[TargetInvocationException: 调用的目标发生了异常。]
System.RuntimeType.InvokeDispMethod(String name, BindingFlags invokeAttr, Object target, Object[] args, Boolean[] byrefModifiers, Int32 culture, String[] namedParameters) +0
System.RuntimeType.InvokeMember(String name, BindingFlags invokeAttr, Binder binder, Object target, Object[] args, ParameterModifier[] modifiers, CultureInfo culture, String[] namedParameters) +473
System.Web.Mail.LateBoundAccessHelper.CallMethod(Object obj, String methodName, Object[] args) +58

[HttpException (0x80004005): 未能访问“CDO.Message”对象。]
System.Web.Mail.LateBoundAccessHelper.CallMethod(Object obj, String methodName, Object[] args) +113
System.Web.Mail.CdoSysHelper.Send(MailMessage message) +1512
System.Web.Mail.SmtpMail.Send(String from, String to, String subject, String messageText) +125
BookShop2003.WebForm2.Button1_Click(Object sender, EventArgs e) in c:\inetpub\wwwroot\bookshop2003\webform2.aspx.cs:85
System.Web.UI.WebControls.Button.OnClick(EventArgs e) +108
System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +57
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +18
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
System.Web.UI.Page.ProcessRequestMain() +1263




--------------------------------------------------------------------------------
版本信息: Microsoft .NET 框架版本:1.0.3705.0; ASP.NET 版本:1.0.3705.0
...全文
124 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
Philippy 2003-12-11
  • 打赏
  • 举报
回复
up
eliphe 2003-12-06
  • 打赏
  • 举报
回复
有很详细的帮助和demo,你只需要很简单的改改就可以用了.

附带asp,C#,VB.Net的演示




HSkyXSmtp Web邮件群发 1.0

http://www.skyec.com/cpxz.asp

免费软件

简介:
HSkyXSmtp Web邮件群发专家,使用简单,功能强大。
  同时支持匿名和身份验证,适用于多种服务器环境,更方便使用。
  率先支持用户名和密码加密保护机制,更加安全可靠。
  采用多文本编辑模式,可直接添加字符和调入文本文件,信件格式更随心所欲。
  支持html编码超文本信件,让你的信件别出心裁,更具亮点。
  可同时发送多个附件,操作简单,速度极快。
  采用了标准的Com组件方式,只需服务器端注册即可,而再也不用担心客户机是否支持。
  本组件经过多种平台环境负荷压力测试,运行稳定、速度快、资源占用低。
veaven 2003-12-02
  • 打赏
  • 举报
回复
/// <summary>
/// 密码 [如果需要身份验证的话]
/// </summary>
public string Password {
get { return password; }
set { if (value != password) password = value; }
} private string password = "";

/// <summary>
/// 发件人地址
/// </summary>
public string From {
get { return from; }
set { if (value != from) from = value;}
} private string from = "";

/// <summary>
/// 收件人地址
/// </summary>
public string To {
get { return to; }
set { if (value != to) to = value;}
} private string to = "";

/// <summary>
/// 发件人姓名
/// </summary>
public string FromName {
get { return fromName; }
set { if (value != fromName) fromName = value; }
} private string fromName = "";

/// <summary>
/// 收件人姓名
/// </summary>
public string ToName {
get { return toName; }
set { if (value != toName) toName = value; }
} private string toName = "";

/// <summary>
/// 邮件的主题
/// </summary>
public string Subject {
get { return subject; }
set { if (value != subject) subject = value; }
} private string subject = "";

/// <summary>
/// 邮件正文
/// </summary>
public string Body {
get { return body; }
set { if (value != body) body = value; }
} private string body = "";

/// <summary>
/// 超文本格式的邮件正文
/// </summary>
public string HtmlBody {
get { return htmlBody; }
set { if (value != htmlBody) htmlBody = value; }
} private string htmlBody = "";

/// <summary>
/// 是否是html格式的邮件
/// </summary>
public bool IsHtml {
get { return isHtml; }
set { if (value != isHtml) isHtml = value; }
} private bool isHtml = false;

/// <summary>
/// 语言编码 [默认为GB2312]
/// </summary>
public string LanguageEncoding {
get { return languageEncoding; }
set { if (value != languageEncoding) languageEncoding = value; }
} private string languageEncoding = "GB2312";

veaven 2003-12-02
  • 打赏
  • 举报
回复
这是我转贴的邮件类源代码

C# - MailSender 邮件发送组件源代码 (支持ESMTP, 附件) jc630(原作)

关键字 邮件, ESMTP, Mail



//============================================================
// File: MailSender.cs
// 邮件发送组件
// 支持ESMTP, 多附件
//============================================================

namespace JcPersonal.Utility
{
using System;
using System.Collections;
using System.Net.Sockets;
using System.IO;
using System.Text;

/// <summary>
/// Mail 发送器
/// </summary>
public class MailSender
{
/// <summary>
/// SMTP服务器域名
/// </summary>
public string Server {
get { return server; }
set { if (value != server) server = value; }
} private string server = "";

/// <summary>
/// SMTP服务器端口 [默认为25]
/// </summary>
public int Port {
get { return port; }
set { if (value != port) port = value; }
} private int port = 25;

/// <summary>
/// 用户名 [如果需要身份验证的话]
/// </summary>
public string UserName {
get { return userName; }
set { if (value != userName) userName = value; }
} private string userName = "";


veaven 2003-12-02
  • 打赏
  • 举报
回复
可能是那个邮件服务器需要验证才能发送邮件
.net 的SmtpMail 不支持需要验证的邮件服务器

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧