2016-01-22 220 views
0

我是VB.Net编码EWS的新手。我的目标是从收到指定收件箱的邮件中提取附件并将​​其保存到指定的文件夹中。我测试了一些对我的域名/ Exchange帐户使用起来似乎很好的代码。EWS&VB.Net:未经授权的证书 - (401)未授权

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

The request failed. The remote server returned an error: (401) Unauthorized.

的代码是非常基本至今:

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) 

错误是由过去的生产线生产。

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

+0

尝试'exch.Credentials =新的WebCredentials(“user @ domain”,“PASSWORD”,“DOMAIN”);'或'exch.Credentials = new WebCredentials(“user” ,“PASSWORD”,“DOMAIN”);' – Hackerman

+0

我尝试了两个结果相同的结果。第一个建议回来了,但错误要快得多。 – DexterSlab442

+0

也许相关:http://www.petenetlive.com/KB/Article/0000775 – Hackerman

回答

0

解决我自己的问题:

看起来像我创建的用户名相比,最重要的是一个有点冗长。当我使用“IncomingStoreInpect”截断的“Windows 2000以前版本”登录名(前19个字符)时,我可以使用EWS。

还没有看到有人记录在任何地方。希望它可以帮助别人有一天......