【发布时间】:2023-03-19 13:25:01
【问题描述】:
我正在使用 C# 编写 Outlook VSTO,目标是 Outlook 2010。我需要获取消息的 MIME 内容类型(想想text/plain 或其更奇特的替代方案)。我唯一能找到的地方是消息头,这是一个我不想手动读取和解析的长字符串。
MSDN 记录了 PidNameContentType 属性 (alternate link),但我无法让它工作。任何类似的事情总是失败(未找到)。
String ct = mail.PropertyAccessor.GetProperty(
"urn:schemas:mailheader:content-type"); // Not found
String ct2 = mail.PropertyAccessor.GetProperty(
"http://schemas.microsoft.com/mapi/string/{00020386-0000-0000-C000-000000000046}/content-type"); // Not found
奇怪的是,对于类似的documented example,这甚至会失败:
String ct2 = mail.PropertyAccessor.GetProperty(
"http://schemas.microsoft.com/mapi/string/{00020386-0000-0000-C000-000000000046}/content-class"); // Not found
另一方面,一些“更常见”的标头,例如 urn:schemas:mailheader:subject,工作正常。
我只是使用了PropertyAccessor 错误吗? Outlook 实际上并没有解析出 Content-Type 标头,而我只需要手动完成吗?还有其他方法可以获取此标头的内容吗?
【问题讨论】:
标签: vsto outlook-addin