使用 ac# vsto addin 我正在尝试访问收件箱文件夹的相关内容,我认为它代表了活动视图。(目标是弄乱 pr_view_state 属性中的 blob)。问题是只有当我首先从 UI 访问“视图设置”时,才能访问该项目。顺便说一句,即使使用 Outlook Spy,我也观察到相同的行为
Outlook.MAPIFolder inbox = Globals.ThisAddIn.Application.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox);
Outlook.StorageItem storageItem = inbox.GetStorage("IPM.Microsoft.FolderDesign.NamedView", Outlook.OlStorageIdentifierType.olIdentifyByMessageClass);
Outlook.PropertyAccessor pa = storageItem.PropertyAccessor;
const string PR_NORMALIZED_SUBJECT = "http://schemas.microsoft.com/mapi/proptag/0x0E1D001F";
const string PR_VIEW_STATE = "http://schemas.microsoft.com/mapi/proptag/0x68350102";
string normViewName = pa.GetProperty(PR_NORMALIZED_SUBJECT).ToString();
正如我所说,如果我在 Outlook GUI 中使用视图设置,那么上面的代码可以工作(项目也显示在 Outlook Spy 中),如果没有,则 pr_normalized_subject 返回一个空字符串,访问 pr_view_state 属性会引发异常。我究竟做错了什么?