【发布时间】:2017-02-02 21:57:31
【问题描述】:
这很奇怪。
我从 Outlook 外部打开了一个保存的 Outlook MailItem(.msg 文件),由于某种原因尚未设置其 EntryID:
一些上下文:
- 此 MailItem 是一个保存的 .msg 文件,它是从 Windows 资源管理器而不是 Outlook 打开的。
- 在我的代码中,我最初从附件开始,然后将 MailItem 作为其父项。
如果我在调试时检查 MailItem,EntryID 为 null 或空字符串...
...但是如果(例如)我展开 m_ObjectToDataMap 直到我到达 _rcw 并展开 那个 对象的 Dynamic View - 那就是设置 EntryID 的时候。
好像 MailItem 还没有完全加载,在调试器中对值的一些检查以某种方式完成了 MailItem 的初始化。
我试过了:
- 与
System.Threading.Thread.Sleep()等待几秒钟。 -
parent.Save()尽管我知道这不是正在编写的新 MailItem。 - 刷新活动检查器。
- 尝试通过其他方法获取 MailItem,而不是从附件中获取。
这些都不能解决问题。为什么会这样?我将如何解决或解决此问题?任何帮助将不胜感激。
【问题讨论】:
标签: c# outlook vsto outlook-addin