C# 通过Exchange server 发送邮件

微软的Exchange邮件服务不同与一般的邮件server,他不能简单使用SmtpClient等组件实现邮件收发的功能。

那么怎么通过Exchange服务发送邮件呢?

微软的Exchange服务都有webservice接口, 通过其提供的webservice发送邮件也是最简单的方法。

验证Exchange服务的webservice是否正常:https://xx.xxxxx.com/ews/exchange.asmx, 能打开就是正常。可能须要登录。

可是这个webservice不同于普通的webservice,不能简单的加入web引用来调用。

首先我们须要下载一个Microsoft.Exchange.WebServices.dll,然后引用到我们的项目里边,下载地址http://www.microsoft.com/en-us/download/details.aspx?id=28952,是个msi,安装好之后就有那个dll,然后就能够開始了。。

以下是一个发送邮件的样例:

using Microsoft.Exchange.WebServices;
using Microsoft.Exchange.WebServices.Data;

        private void SendEmail()
        {
            ExchangeService service = new ExchangeService();

            // 获取身份验证, 能够尝试你的邮箱名, 域用户ID等
            // user: 登录username,邮箱登录ID或者域登录ID
            // password:你懂的
            // domain:域,不是域名,域用户的的话就得填这个,选填
            service.Credentials = new NetworkCredential("user", "password", "domain");
            service.TraceEnabled = true;
            service.AutodiscoverUrl("[email protected]"); // 这个是发件然的邮箱地址,完整的([email protected]).

            EmailMessage message = new EmailMessage(service);
            message.Subject = "Email的主题";
            message.Body = "Email的内容";
            message.ToRecipients.Add("收件人的邮件地址");
            message.Save();

            message.SendAndSaveCopy();// 发送
        }
时间: 10-14

C# 通过Exchange server 发送邮件的相关文章

用C#(ASP.Net)在Exchange Server环境下发送邮件

普通的邮件, 用System.Net.Mail 类 或 System.Web.Mail 类 处理即可, 但是Exchange Server 环境下, 这两个类起不了作用-------至少目前我看到的情况如此. 整个过程如下: 1. 先添加COM 引用 "Microsoft CDO for Windows 2000 Library" .2. 发送邮件的代码: CDO.Message msg = new CDO.Message(); string passWord="passWo

Exchange Server 2013系列二:服务器角色

杜飞 在上一篇文章中,我们提到现在硬件性能的增加以及成本的下降,硬件已经不再成为软件应用的约束因素,特别是CPU,其 计算能力的成本显著降低.Exchange 2013 的主要设计目标是简化缩放.提高硬件利用率和实现故障隔离.Exchange 2013一开始将服务器角色的数目减少到了两个:客户端访问服务器角色和邮箱服务器角色,当然,升级到SP1之后也包含边缘服务器角色或者是边界网络中安装 Exchange 2007 或 Exchange 2010 边缘传输服务器角色.如下图所示: 客户端访问服务

Exchange Server 运维管理01:Exchange中Active Directory 有什么用?

近期,需要给客户进行一次Exchange Server 的运维普及培训,在前期博文的基础上,准备再梳理一下运维管理的思路,发几篇和运维管理相关的博文.本文,就介绍一下Exchange Server 2010中的Active Directory有什么用? 很多朋友都知道,安装Exchange 肯定需要在域环境里,活动目录很重要,但到底起到了哪些作用?我们来看一下.针对Exchange Server来说,活动目录主要起到两大作用:一是 Exchange Server 使用 Active Direct

Exchange Server 2013 公网发布疑难解答

Microsoft Exchange Server 2013的公网发布文章在网上有很多,所以这也是我迟迟没有发布公网发布相关博文的原因.但是在最近身边有很多同学在实现Exchange Server 2013 公网发布时有很多的困惑,由此今天整理了一些常见的问题跟大家分享,希望可以帮到同学们. 问题一:实现Exchange Server 2013公网发布需要什么前提条件? 在本地已经部署好AD和Exchange服务器,并且保证服务器可以连接Internet: 公网域名:虽然有很多域名提供商支持免费

Exchange Server 2013 DAG高可用部署(五)-服务器配置(下)

接上文 17. 删除默认邮箱数据库(建议,但不是必须) 我们在完成微软Exchange Server 2013的两台后端MBX服务器的安装之后,默认会出现两个系统自建的邮箱数据库文件,由于名字带有一个随机值,而且从今后的运维角度上来说,不太利于区分和管理,所以我们建议大家删除掉这两个默认新建的邮箱数据库,创建一个名字更好区分并具有代表性的新邮箱数据库.还是那句话,如果你"任性"的觉得这个名字很好,也可以直接跳过这一步. 在对这两个默认数据库进行删除的时候,我们选择先删除后安装的MBX-

Exchange Server 2013系列十二:邮箱的基本管理

杜飞 邮箱是 Exchange 组织中信息工作人员最常用的收件人类型.每个邮箱都与一个 Active Directory 用户帐户关联.用户可以使用邮箱发送和接收邮件,并可以存储邮件.约会.任务.便笺和文档.邮箱是 Exchange 组织中用户的主要邮件传递和协作工具.每个邮箱由 Active Directory 用户以及存储在 Exchange 邮箱数据库中的邮箱数据组成(如下图所示).邮箱的所有配置数据都存储在 Exchange 用户对象的 Active Directory 属性中.邮箱数据

Exchange Server 2016 之七:体系结构

新的Exchange Server 2016已经由2013的前后端角色合并在了一台服务上,缩减后的体系架构也让16的高可用架构有了变化!我们来看看Exchange 2016中的架构变成什么样了吧,也看看我们的高可用架构应该怎么去设计. 以下多数内容来自Technet: https://technet.microsoft.com/zh-cn/library/jj150491(v=exchg.160).aspx ------------------华丽的分割线-------------------

VM workstation典型安装Exchange Server 2010服务器

典型安装Exchange Server 2010服务器 需求分析 BDQN公司已经部署了Windows Server 2008的AD域,域名为"benet.local".企业需要在内部建立邮件系统,满足企业内部员工之间的邮件通信.并需要配置邮件客户端,满足企业内部员工之间的邮件收发. BDQN公司需要为公司的员工Tim创建邮箱,并且限制其邮箱的大小为40MB,收发邮箱的大小为15MB.为经理创建邮箱的大小为100MB,收发邮件的大小为50MB. 另外,由于公司与三名客户(alice.B

Exchange Server 2010邮件撤回条件说明

在很多的企业运维中,员工有时会出现发出的邮件想要撤回的需求,那么今天我们就来看看Exchange Server邮件平台下,员工需要成功撤回需要满足的四个条件,如下: 1. 必须为Exchange 模式接收邮件,不能为pop模式.即便是你的服务器端是Exchange Server服务器:    2. 发送邮件必须为组织内部:    3.此邮件在对方的收件箱中标记为"未读"状态:    4. 邮件在Outlook中,对方使用OWA登录看邮件,即便是未读也不能撤回. 另外,大家感兴趣,也可以