`
leonardleonard
  • 浏览: 820567 次
社区版块
存档分类
最新评论

C#使用CDO发送邮件

阅读更多
可以引用的COM组件列表,发现里面有一个名为Microsoft CDO For Exchange 2000 Library的COM组件,就是这个,我们可以用它来连接SMTP Server,使用用户名/密码验证发送邮件。

下面是实现的一个例子:

Smtp Server使用的Smtp-SRV,登陆用户名是David Euler,发送邮箱是davidEuler@test.com,发送到test@test.com/


1).资源管理器里面,添加引用(reference),添加Microsoft CDO For Exchange 2000 Library的COM组件;

2).编辑用户界面如上图,依次添加FromTextBox,ToTextBox,CCTextBox,BCCTextBox,SubjectTextBox,MessageTextBox,PasswordTextBox,smtpTextBox,设置MessageTextBox的TextMode属性为“MultiLine“, PasswordTextBox的TextMode属性为“Password“,并添加响应提示标签,添加发送按钮Send。

3).输入用户名,密码,smtp server之后,用户点击Send按钮发送邮件,
Send 按钮的Click事件代码如下:
CDO.Message oMsg = new CDO.Message();
//oMsg.From = FromTextBox.Text ;
oMsg.To = ToTextBox.Text ;
oMsg.Subject = SubjectTextBox.Text ;
oMsg.TextBody = MessageTextBox.Text ;
oMsg.CC=CCTextBox.Text ;
oMsg.BCC=BCCTextBox.Text ;
string UserName;
string emailFrom;
string Password=PasswordTextBox.Text.ToString().Trim();

UserName=FromTextBox.Text.Trim();
emailFrom=UserName.Replace(" ","")+"@Test.com";
oMsg.From=emailFrom;

CDO.IConfiguration iConfg;
ADODB.Fields oFields;
iConfg = oMsg.Configuration;
oFields = iConfg.Fields;

oFields["http://schemas.microsoft.com/cdo/configuration/sendusing"].Value=2;
oFields["http://schemas.microsoft.com/cdo/configuration/sendemailaddress"].Value=emailFrom;
oFields["http://schemas.microsoft.com/cdo/configuration/smtpuserreplyemailaddress"].Value=emailFrom;
oFields["http://schemas.microsoft.com/cdo/configuration/smtpaccountname"].Value=UserName;
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/smtpserver"].Value=smtpTextBox.Text.Trim(); //smtp.163.com
oFields.Update();

try
{
oMsg.Send();
oMsg = null;
Response.Write("<script>alert('"+ "邮件发送成功!" +"');</script>");
}
catch (Exception ex)
{
Response.Write("<script>alert('"+ "发送失败:" +"');</script>");

string exMsg="UserName:"+UserName+
" Passwd:"+Password+
" Smtp:"+smtpTextBox.Text.Trim();

Response.Write("<script>alert('"+ exMsg +"');</script>");
failedLabel.Text=ex.Message.ToString();

 
分享到:
评论

相关推荐

    C#使用CDO发送邮件的方法

    本文实例讲述了C#使用CDO发送邮件的方法。分享给大家供大家参考。具体分析如下: CDO是一个名为Microsoft CDO For Exchange 2000 Library的COM组件,我们可以用它来连接SMTP Server,使用用户名/密码验证发送邮件。 ...

    c#解析eml、CDO解析发送eml(Demo)

    以下是使用CDO发送EML文件的步骤: 1. 添加对CDO库的引用:在项目中右键点击“添加引用”,然后选择“COM”选项卡,找到并添加“Microsoft CDO for Windows 2000 Library”。 2. 创建CDO.Message对象并设置配置: ...

    c# 使用Codosys.dll(CDO)发送邮件

    c# 使用Codosys.dll(CDO)发送邮件

    C#CDO,NET.MAIL,调用outlook发送邮件

    C#CDO,NET.MAIL,调用outlook发送邮件 三种办法发送邮件。 三种都测试通过的。 可以使用。 CDO是内网使用代理上网时使用。 调用outlook的方法,没有outlook时无法使用。 net.mail不是代理上网的环境时使用,在代理...

    发送邮件发送,先提一下SMTP

    - **用途**:提供了使用Windows 2000 CDOSYS的消息组件发送邮件所需的属性和方法。 - **关键属性**: - `SmtpServer`:SMTP服务器的地址。 #### 三、发送邮件的方法 ##### (一)利用知名邮件服务提供商的SMTP...

    C# 发送email信息

    本文介绍了如何使用C#语言发送电子邮件的方法,包括基本的邮件发送流程、身份验证配置以及添加附件等功能。通过这些步骤,可以构建一个简单但功能强大的邮件发送系统。需要注意的是,在实际应用中还可能涉及更复杂的...

    C# SendMail发送邮件功能实现

     3、利用CDO发送,这种方式要引用Interop.ADODB.dll(http://www.nodevice.com/dll/Interop_ADODB_dll/item20357.html)和Interop.CDO.dll()两个文件 具体代码如下: using System; using System.Collections....

    SMTP发邮件方法

    总结起来,这个压缩包中的资源提供了一种在ASP.NET C#环境下使用SMTP服务发送邮件的方法,包括了SMTPClient的使用示例、CDO组件的引入(虽然已过时),以及SMTP服务器配置的管理。通过这些工具和代码,开发者可以...

    net邮件收发系统的设计(论文+源代码+开题报告+外文翻译+文献综述+答辩PPT).zip

    对于发送邮件来说,在.NET中的具体的实现基本上有三种方式1) 利用System.Web.Mail这个名称空间2) 使用CDO组件发送邮件3)使用Socket撰写邮件发送程序 ,采用以上任何一种都可以实现发送邮件的功能了

    NET发送确认邮件(找回密码)

    本篇将详细介绍如何在.NET Framework 1.x 和 .NET Framework 2.0 下使用C#与VB.NET来实现这一功能,并特别关注邮件参数配置、邮件发送及邮件服务器验证等关键步骤。 #### 二、.NET Framework 1.x 实现 在.NET ...

    .Net发送邮件

    通过以上步骤,我们可以使用 C# 在 .Net 环境下实现邮件发送功能。需要注意的是,随着 .Net 平台的发展,目前推荐使用更现代的库如 `System.Net.Mail` 来替代 `System.Web.Mail`,后者已被标记为过时。

    C# 邮件发送和接收实现代码

    在C#编程中,发送和接收电子邮件是常见的任务,尤其在开发企业级应用程序时。这里我们将深入探讨如何使用两种不同的方法来实现这个功能,重点是使用`System.Web.Mail`和`System.Net.Mail`命名空间。 首先,我们来看...

    ASP.NET结合COM组件发送Email

    在C#中,你可以创建一个名为`CDOsendmail`的方法,初始化`CDO.Message`对象,设置发件人、收件人、主题和邮件内容。邮件内容可以是HTML格式,以提供更丰富的展示效果。接着,通过`CDO.IConfiguration`接口配置SMTP...

    smtp.zip_vbs

    SMTP(Simple Mail Transfer Protocol)是互联网上用于发送电子邮件的标准协议,而VBScript(Visual Basic Scripting Edition)是一种...在实际操作中,请确保遵守相关的电子邮件使用政策和法律法规,尊重他人的隐私。

    ASP实例编程100例

    - **邮件发送**:利用CDO(Collaboration Data Objects)发送邮件。 - **XML处理**:解析XML文档,使用DOM或XPath查询数据。 每个实例都会包含问题背景、解决方案、代码实现和可能的优化建议,帮助读者从实际应用的...

    网上购物系统

    - "MoreInfo.asp":收集用户选择的信息,通过电子邮件发送给管理员,使用HTML、CSS、JavaScript、ASP、SQL查询、ADO对象和CDO对象。 - "PdRequest.inc":处理Cookies相关的信息,用于存储和更新用户选择。 - 各子...

    Exchange 2007 新特性与二次开发

    - **优势**: EWS与Visual Studio和.NET Framework进行了有效的整合,使得开发者能够利用C# 或 VB.NET等现代编程语言轻松构建自定义应用系统,执行邮件通信环境中的管理任务。 **4. 新的API函数** - **功能**: ...

    网上考试系统的设计与实现

    - **CDO**(Collaboration Data Objects):用于邮件发送等功能的支持。 - **COM Automation**:实现组件之间的自动化交互。 #### Exam.NET功能详解 - **题库管理**:提供友好的界面操作,支持批量导入试题,同时...

Global site tag (gtag.js) - Google Analytics