【问题标题】:Not able to save a mailItem with protected attachment in outlook using c#无法使用 c# 在 Outlook 中保存带有受保护附件的邮件项
【发布时间】:2023-04-09 16:17:02
【问题描述】:

我正在尝试在我的已发送文件夹中创建一个 mailItem 的副本。创建后,我将味精保存在文件夹中。它适用于所有 mailItems ,除非我尝试保存带有附件的 mailItem,而我在 Outlook 中不允许保存附件权限。为什么 mailItem.Save() 仅在这种情况下不保存 mailItem? 在下面的代码中,我使用兑换在已发送文件夹中创建副本。 msg.save() 保存所有邮件,但我上面提到的那一封。我也尝试在创建之前保存mailItem,但它不会生成entryId。

static void CreateSentFolderMail(Redemption.SafeMailItem newSentMail, string nvdID, Outlook.MailItem mailItem, Redemption.SafeMailItem safeMailItem)
{       
    RDOFolder folder = Globals.ThisAddIn.session.GetDefaultFolder(rdoDefaultFolders.olFolderSentMail);
    RDOMail msg = (RDOMail)folder.Items.Add(newSentMail);
    RDOMail originalmsg = Globals.ThisAddIn.session.GetMessageFromID(mailItem.EntryID);
    msg.Sent = true;
    msg.SentOn = DateTime.Now;
    msg.ReceivedTime =msg.CreationTime;
    msg.Subject = safeMailItem.Item.Subject;
    msg.To = safeMailItem.Item.To;
    msg.BCC = safeMailItem.Item.BCC;
    msg.Body = safeMailItem.Item.Body;
    msg.Recipients = originalmsg.Recipients;
    msg.Sender = Globals.ThisAddIn.session.CurrentUser;
    msg.SentOnBehalfOf = Globals.ThisAddIn.session.CurrentUser;
    msg.SetProps(NVDMailHeaderUtils.PS_INTERNET_HEADERS + NVDMailHeaderUtils.NVD_HEADER_ID, nvdID);
    msg.Save();
} 

【问题讨论】:

  • 您是否遇到特定错误?
  • 另请注意,您正在(可能)通过设置纯文本 Body 属性来擦除 HTML 格式。请注意,您可以通过调用 originalmsg.CopyTo(msg) 来复制所有属性。
  • 我理解为什么在这种情况下保存失败特别是,这是由于错误:对未保存的消息使用 RDOSession.GetRDOObjectFromOutlookObject 或 Safe*Item 可能会阻止该消息被保存,并且可以在调用 GetRDOObjectFromOutlookObject 几次后引发异常(超过允许的最大挂钩数)。
  • 现在我有另一个问题,它的条目 ID。我总是收到 IMapi 无效 entryID 错误。有没有其他方法可以在不使用 entryID 的情况下获取 RDOrecipients?
  • 我不确定我是否理解 - 你的意思是你得到了一些条目 id,但是当你尝试使用它时代码失败了?你的代码的相关sn-p是什么?

标签: outlook outlook-redemption mailitem


【解决方案1】:

在调用此方法获取 RDOAttachment 对象之前,我曾使用过 session.GetRDOObjectFromOutlookObject。但是在使用这个之后: session.GetRDOObjectFromOutlookObject 我无法保存邮件项。 Save 没有被执行,因此没有生成 EntryId。由于这个问题,我在这里遇到了一个错误:RDOMail originalmsg = Globals.ThisAddIn.session.GetMessageFromID(mailItem.EntryID);说“无效的条目ID”。我安装了解决此问题的新版本兑换。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-01-03
    • 2021-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-28
    • 2022-01-17
    • 1970-01-01
    相关资源
    最近更新 更多