4

我目前已经编写了代码,使用常用的 SMTPClient 和 MailMessage 对象在 C# 中发送电子邮件。

我的新要求是发送的电子邮件应该设置“权限”,就像用户通过 Outlook 发送电子邮件并使用功能区工具栏中的选项一样。要设置的权限是“不转发”选项。

在此处访问我希望在发送电子邮件时模拟的选项;

任何人都可以提供一些示例.Net代码来实现这一点,或者为我提供一个很好的在线代码参考吗?

在此先感谢,布赖恩。

4

2 回答 2

5

首先,我不知道如何仅使用标准 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。

祝你好运!

于 2012-01-08T10:07:32.847 回答
1

你好布赖恩我只有一个建议“救赎”!我已经使用了它,它很棒,很容易实现所有者 Dima 是非常好的人,他帮助了很多。

PS:它不是免费的,但值得每一分钱。

于 2012-01-03T16:52:47.520 回答