EWS& VB.Net:未经授权的凭证 - (401)未经授权

时间:2016-01-22 18:36:12

标签: vb.net exchangewebservices

我很擅长在VB.Net中编写EWS。我的目标是从到达指定收件箱的邮件中提取附件,并将其保存到指定的文件夹中。我测试了一些代码,这些代码在用于我的域/ Exchange帐户时效果很好。

然后我创建了一个新帐户并尝试使用相同的代码。它开始产生错误:

  

请求失败。远程服务器返回错误:(401)未经授权。

到目前为止,代码非常简单:

    Dim exch As ExchangeService = New ExchangeService(ExchangeVersion.Exchange2010_SP2)

    exch.Url = New Uri("https://mail.OURSERVER.com/EWS/Exchange.asmx")
    exch.UseDefaultCredentials = False
    exch.Credentials = New System.Net.NetworkCredential("IncomingStoreInspections", "PASSWORD", "DOMAIN")

    Dim iv As ItemView = New ItemView(100)
    iv.Traversal = ItemTraversal.Shallow

    Dim InboxItems As FindItemsResults(Of Item) = Nothing
    InboxItems = exch.FindItems(WellKnownFolderName.Inbox, iv)

错误由最后一行产生。

到目前为止,我已经比较了工作用户和新创建的用户的域帐户和邮箱属性,并且没有提供任何有用的信息。提前谢谢!

1 个答案:

答案 0 :(得分:0)

解决了我自己的问题:

看起来我创建的用户名与大多数用户名相比有点长。当我使用截断的" pre-Windows 2000"登录名称" IncomingStoreInpect" (前19个字符),我能够很好地使用EWS。

Haven没有看到任何人记录在任何地方。希望有一天能帮到别人......