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