本帖最后由 speedfirst 于 2010-05-22 09:09:25 编辑

解决方案 »

  1.   

    如果是.NET2.0及以上版本的话,直接使用2.0里面的做法好了,尽量避免使用CDO这种方式。
     .net类库中发送电子邮件的方法总结
    发送电子邮件是许多需要用户注册的网站的通用功能,通过正则表达式我们可以过滤掉不符合电子邮件格式的输入,但是仍没有办法确保用户填写的电子邮件地址一定是他本人真实有效的电子邮件地址,通常验证电子邮件真实有效的办法是:当用户填写的注册资料经过网站初步格式验证之后,用户并不能利用此帐号登录,系统会向用户注册时填写的电子邮件地址发送一封电子邮件,邮件中给出一个链接,只有当用户点击了这个链接之后才能登录到网站,如果用户填写的电子邮件地址不是真实有效的或者不是他本人的,就不会收到这封电子邮件,这样仍然不能登录,这一步一般称之为电子邮件激活。在.net类库中有两种发送电子邮件的方式,一种是在.net2.0以下版本中的做法,一种是.net2.0以上版本的做法。下面分别介绍这两种办法。
      

  2.   

    非常感谢。不过System.Net.Mail.MailMessage唯独没有Save和Load功能,造成没法读写eml文件。所以用CDO也是不得已。
      

  3.   

    CDO这个组件是自从Windows2000后一直随Windows安装的吧。Interop.CDO是不是必须放在windows /system32下~?我马上检查一下注册表里有没有Interop.CDO
      

  4.   

    自己解决了,把Interop.CDO.dll这类的东西都放到system32目录下就可以了。估计放Global Assembly Cache里也行,不过懒得生成强名称了。不知道这样做是不是很elegant。感谢诸位。