c# – 在Outlook MailItem中设置自定义标头
发布时间:2020-12-15 22:01:18 所属栏目:百科 来源:网络整理
导读:我正在处理outlook加载项,我需要设置自定义标头.我正在使用VS2010进行开发. 我正在尝试使用以下代码,但它似乎没有工作. private void AddUserProperty(Outlook.MailItem mail,string folderEmailId){ Outlook.PropertyAccessor mailPropertyAccessor = null;
我正在处理outlook加载项,我需要设置自定义标头.我正在使用VS2010进行开发.
我正在尝试使用以下代码,但它似乎没有工作. private void AddUserProperty(Outlook.MailItem mail,string folderEmailId) { Outlook.PropertyAccessor mailPropertyAccessor = null; try { if (string.IsNullOrEmpty(folderEmailId)) return; mailPropertyAccessor = mail.PropertyAccessor; mail.PropertyAccessor.SetProperty("http://schemas.microsoft.com/mapi/string/{00020386-0000-0000-C000-000000000046}/X-WorksiteFolderEmailId",folderEmailId); mail.Save(); try { MessageBox.Show("Existing :" + mail.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/string/{00020386-0000-0000-C000-000000000046}/X-WorksiteFolderEmailId")); } catch (System.Exception ex) { MessageBox.Show(ex.Message); } } catch (System.Exception ex) { Logger.Error(ex); MessageBox.Show(ex.Message); } finally { if (mailPropertyAccessor != null) Marshal.ReleaseComObject(mailPropertyAccessor); } } 保存邮件项目后,我正在尝试获取相同的项目进行验证,但是它会抛出异常,说明找不到该属性. 解决方法
虽然直接获取PropertyAccessor的引用是不必要的,但我没有看到您的代码存在问题.尝试:
string prop = "http://schemas.microsoft.com/mapi/string/{00020386-0000-0000-C000-000000000046}/X-WorksiteFolderEmailId"; mail.PropertyAccessor.SetProperty(prop,folderEmailId); mail.Save(); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |