普通的邮件, 用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="passWord";

        string from = "my@domain.com";

        string server = "192.168.0.0";


         msg.From = from;
         msg.To = from;
         msg.Subject = "test mail";
         msg.TextBody = "test.";

 

         CDO.IConfiguration iConfig = msg.Configuration;

         ADODB.Fields fields = iConfig.Fields;

 

         fields["http://schemas.microsoft.com/cdo/configuration/sendusing"].Value = 2;

         fields["http://schemas.microsoft.com/cdo/configuration/sendemailaddress"].Value = from;

         fields["http://schemas.microsoft.com/cdo/configuration/sendpassword"].Value = passWord;

         fields["http://schemas.microsoft.com/cdo/configuration/smtpauthenticate"].Value = 1;

         fields["http://schemas.microsoft.com/cdo/configuration/smtpserver"].Value = server;

 

         fields.Update();

 

        try

        {

             msg.Send();

             msg = null;

         }

        catch (Exception ex)

        {

            throw;

         }

其中, fields的这五个属性是它所有可选属性的最紧的一个子集, 即,这五个属性是缺一不可的, 其它的属性还有:
http://schemas.microsoft.com/cdo/configuration/smtpaccountname

http://schemas.microsoft.com/cdo/configuration/smtpuserreplyemailaddress

http://schemas.microsoft.com/cdo/configuration/sendusername

等.

奇怪的是, msg 本身也有fields 属性, 或者如同程序中引用的: msg.Configuration.Fields, 但是如果不用上述程序中的方法, 而是直接引用 msg的Fields 或 msg.Configuration.Fields 属性, 则不能成功发送邮件, (没有错误或异常, 但是收不到邮件) 为什么会这样, 有点费解.

fields 的smtpauthenticate 属性的取值也是挺有意思的, 当它取0时, 代表无需验证, 1代表基本的验证, 2是NTLM验证, 可是我在Outlook里把验证方式设为NTLM, 而在这里把值取为1, 一样能够发送成功, 呵呵, 看来一般情况下取1 都是可以的了.

sendUsing 取2 的意思是, 强制通过smtpServer 属性指定的server 发送邮件, 所以只要server属性设置好, sendUsing取2 基本就是通用值了.

server属性设为exchange server 的IP 地址即可.

转载于:https://www.cnblogs.com/ayforver/archive/2012/04/11/2442538.html

.net中调用exchange服务器发邮件相关推荐

  1. 删除域中的Exchange服务器

    系统环境: Windows Server 2012 R2 Datacenter Exchange Server 2013 需求一:删除域中废弃的Exchange服务器 域中启用了新的Exchange服 ...

  2. php如何调用163邮箱发邮件,phpmailer使用163邮箱发送邮件例子

    phpmailer是一款免费的php邮件发送插件,我们可以利用phpmailer登录到我们指定的邮件然后再利用这个邮件给我们自动发邮件了,这个现在免费的邮箱像163,sina都支持,只是sina需要简 ...

  3. exchange服务器保留邮件,Exchange服务器之Exchange备份单个用户邮件及清理邮箱数据...

    大家好,为了能够和有疑问的同行者及时沟通,我建立了一个群:615870353,我会免费更新行业信息,并回复大家提出的各种行业问题. 问题: 需要在Exchange服务器上导出一个用户的邮箱数据,然后再 ...

  4. 同战网不同服务器发邮件,坑爹的新邮件系统:暴雪悄悄设定发邮件数量上限 - 178魔兽世界专区...

    新年到了,各位玩家们是否打算给自己游戏里的朋友们都邮寄上一点小礼物以祝贺新年快乐呢?各位公会会长们是不是也打算通过发邮件的方式给会员们每人包个红包庆贺新年呢? 很可惜,在大灾变里,除非你打算邮寄礼物的 ...

  5. php如何调用163邮箱发邮件,ThinkPHP3.2利用QQ邮箱/163邮箱通过PHPMailer发送邮件的方法...

    前言 我之前一直使用163邮箱发送需要处理的文件,但是如果操作过于频繁[或者有别的问题],会导致发送失败,相反现在用QQ的貌似还没出现过类似情况,不过QQ邮箱配置和163有一丢丢不一样,我还是贴一下, ...

  6. php mail发送邮件,PHP中利用PHPMailer实现发邮件

    下面以QQ邮箱为例,按照这四个方面来介绍PHPMaIiler的使用: PHPMailer的介绍 步骤一:使QQ邮箱能够发送邮件 步骤二:使PHP能够使用QQ邮箱发送邮件 步骤三:编写发送邮件代码 Th ...

  7. linux mysql 邮件_linux中mysql 自动备份发邮件 到指定邮箱代码

    首先 编写 导出的 命令 使用了 mysqladmin ping mysqldump 然后是 添加附件到邮件中发送 使用了对应的com 最后 暂停 看情况 参考: http://hi.baidu.co ...

  8. 在阿里云服务器发邮件

    在本地调试可以正常发送邮件,在服务器上发送失败 原因25端口被阿里云禁用,不能被开启,只能尝试用465 端口采用加密方式发送邮件. 然而 使用 smtp.163.com 的用 465端口发送还是失败, ...

  9. 利用CodeIgniter中的Email类发邮件

    CodeIgniter拥有功能强大的Email类.以下为利用其发送邮件的代码. 关于CI的Email类的详情请参考:http://codeigniter.org.cn/user_guide/libra ...

最新文章

  1. 中国开封菊花花会照片1
  2. server2012 图文安装流程
  3. Cloudera Manager是什么?
  4. 手写一个二级选择框联动
  5. 1_Why DL work ?
  6. 如何给领导打造一款掌上财务管理驾驶舱?
  7. 2020年国内电影总票房突破100亿元
  8. python怎么实现eemd_EEMD算法原理与python实现
  9. 个人计算机软件著作权,个人可以申请软件专利权吗?软件著作权申请的注意事项有哪些?...
  10. r610服务器维修,戴尔服务器R610
  11. 互联网周刊:草根创业选择题
  12. 配置ABP的redis
  13. 剑指offer.把数字翻译成字符串
  14. Spring框架文档(二 )
  15. VNC启动报错问题‘testdb:1 is taken because of’解决
  16. WITS数据库中国双边进口关税数据环境规制综合指数
  17. Ubuntu离线安装Gitlab
  18. Autojs豆瓣小组自动回帖机器人,模拟器可用
  19. HALCON之焊点检测(二):基于形态学的基础焊点检测方法
  20. 设计模式七大原则——开闭原则

热门文章

  1. LoadRunner如何监控Linux下的系统资源
  2. ppt图片丢失_041 职场PPT实战:做好的PPT换个电脑就丢字体?三招解决!
  3. wxpython下载缓慢_我可以在wxPython的wx.grid.Grid中加速优化GridCellAttr的使用吗?
  4. CentOS中通过NAT连接网络
  5. 从字符串 const str = ‘qwbewrbbeqqbbbweebbbbqee‘;中能得到结果 [“b“, “bb“, “bbb“, “bbbb“] 以下错误语句是?
  6. linux基于域名的虚拟主机,Nginx虚拟主机应用——基于域名、IP、端口的虚拟主机...
  7. 计算机组装报告文档,计算机组装报告.doc.docx
  8. java arraylist 重复_Java中ArrayList去除重复元素
  9. linux备份日志文件脚本,Linux篇:Shell脚本实现Gitlab双备份
  10. java调用wvsc.exe_c语言 函数的调用方法