应客服部的要求,需要在给客户发送邮件的后,当客户阅读邮件的时候给发件人一个回执信息,好让我们知道客户已经收到邮件,并开始阅读了。这个功能在一 般的qq邮箱或者其他的邮箱中设置都比较方便,只要勾选一下就可以了。但是我们是用的.net写的程序直接发送邮件,所以就只能修改代码了,谷歌了一圈, 费了不少劲,不过还是在MSDN中找到了http://msdn2.microsoft.com/en-us/vbasic%20/bb630227.aspx ,应该算是比较权威的,虽然是英文的,不过借助于翻译工具还是可以理解的。里边说的关键是这样设置

MyMailMessage.Headers.Add(“Disposition-Notification-To”,returnreceipt@return.com)//后面的一个邮箱地址,就是要接受回执的邮箱了


测试以后,通过。OK。

顺便把网上的一些其他的方法也收集一下,有需要的也可以参考一下:
一、在.NET 1.1 环境下
1) 使用System.Web.Mail方式,回执功能无法测试成功。2)使用CDOsys.dll组件方式,只能实现“收到回执”,而“已读回执”失败。 (cdosys.dll是内置在操作系统里面的,在system32目录下。具体的操作方法,参考http://blog.csdn.net /irvine007/archive/2006/02/22/606117.aspx资料)
二、在.NET 2.0情况下
使用2.0的 System.Net.Mail,使用前面资料提到的方法,“已读回执”测试失败。但可以用

mail.DeliveryNotificationOptions = DeliveryNotificationOptions.OnSuccess;

实现“收到回执”功能
最后解决方案,在一位熟悉notes服务器的同事指点下,

mail.Headers.Add(“ReturnReceipt”, “1″);

成功实现了“已读回执”。随后在.NET 1.1 环境下测试,发现无效,只能在在.NET 2.0 环境下正常运行。

posted on 2012-06-08 15:45  xiaohc  阅读(881)  评论(0编辑  收藏