我已经创建了Outlook Addin,我在C#中通过Exchange Api 2.2遇到了电子邮件处理问题。表格不时地从用户那里得到这样的错误"访问被拒绝。检查凭据,然后重试"尝试执行此代码时(使用邮箱所有者并拥有完整权限):
var selection = Adapter.Instance.OutlookApplicationRef.ActiveExplorer().Selection;
string entryId = selection[1].EntryID;
EWS.AlternateId objAltID = new EWS.AlternateId();
objAltID.Format = EWS.IdFormat.HexEntryId;
objAltID.Mailbox = "myemail@test.test";
objAltID.UniqueId = entryId;
//Convert PR_ENTRYID identifier format to an EWS identifier.
EWS.AlternateIdBase objAltIDBase = esb.ConvertId(objAltID, EWS.IdFormat.EwsId);
EWS.AlternateId objAltIDResp = (EWS.AlternateId)objAltIDBase;
string ewsId = objAltIDResp.UniqueId;
var psToLoad = new EWS.PropertySet(EWS.BasePropertySet.IdOnly, EWS.EmailMessageSchema.InternetMessageId, EWS.EmailMessageSchema.Sender,
EWS.EmailMessageSchema.ToRecipients, EWS.EmailMessageSchema.CcRecipients, EWS.ItemSchema.Body,
EWS.EmailMessageSchema.MimeContent);
var EWSEmailMessage = EWS.EmailMessage.Bind(service, ewsId, psToLoad);
我在" EmailMessage.Bind"上收到此错误不时。 99%的用户都可以使用。我有大约5000个用户。我们比较了Exchange中的配置,一切都与应用程序正常工作的用户相同。也许有更好的方法可以在Outlook(2010)中使用选定的电子邮件获取电子邮件信息。