我目前编写的代码是使用常用的SMTPClient和MailMessage对象在C#中发送电子邮件。
我的新要求是发送的电子邮件应设置“权限”,就像用户通过Outloook发送电子邮件并使用功能区工具栏中的选项一样。要设置的权限是“请勿转发”选项。
我希望在发送电子邮件时模拟选项;
任何人都可以提供一些示例.Net代码来实现这一点,或者在线提供一个很好的代码参考吗?
提前致谢, 布赖恩。
答案 0 :(得分:5)
首先,我不知道如何仅使用标准SMTP邮件( MailMessage )设置IRM(信息权限管理)权限。我认为,IRM权限完全以Outlook / Exchange为中心,并且在SMTP标准中缺少任何形式的表示。
您可以通过Outlook Interop程序集通过Outlook对象模型启用该权限的唯一方法。 IamStalker 在我之上推荐了Redemption,虽然99%的时间是与Outlook相关的所有内容的正确答案,但这不是解决这个特定问题的方法。因为IRM(据我所知)在MAPI中没有任何代表,所以Redemption在这里没有多大帮助;我不相信我曾经在Redemption的对象模型上看到过与IRM相关的属性。
您很可能对 MailItem 对象类型公开的Permission属性感兴趣。看来,为了以编程方式启用“不转发”选项,您需要将该属性的值设置为OlPermission.olDoNotForward。
还有另一个与IRM相关的属性( PermissionTemplateGuid ),但由于您使用的是内置“权限”,因此您可以将其保留为空字符串。
我认为所有其他与IRM相关的设置都是通过用户的Outlook配置文件提供给Outlook的。
祝你好运!答案 1 :(得分:1)
Hello Brian我只有一个建议“Redemption”! 我已经习惯了它很棒很容易实现所有者Dima是一个非常好的人 他帮助很多。
PS:它不是免费的,但值得每一分钱。