Exchange 2010 OAB下载问题排错error 0x80200049

 

           之前遇到一个关于OAB下载的问题,由于比较有代表性,我将解决方法分享给大家。

一、问题现场

              使用Outlook 2010/2013下载OAB时提示:error 0x80200049,报错截图如下:

《Exchange 2010 OAB下载问题排错error 0x80200049》

 

二、排错过程

     之前也解决过OAB的下载问题,很多都是由于OAB目录的权限设置不正常,或者是OAB生成服务器无法及时更新OAB文件、通过服务器的报错日志来查看是否存在明显报错来定位问题等。

1、使用浏览器访问OAB,查看是否能够正常访问。得到的结果是http 500,这种情况表明服务不可用。

《Exchange 2010 OAB下载问题排错error 0x80200049》

2、首先我检查了Exchange 2010 CAS服务器上C:\Program Files\Microsoft\Exchange Server\V14\Client Access\OAB的权限。发现权限缺少authenticated Users。

《Exchange 2010 OAB下载问题排错error 0x80200049》

    于是乎,凭经验感觉此处有问题,直接手动添加了权限,然后重启IIS。

《Exchange 2010 OAB下载问题排错error 0x80200049》

3、通过上述权限添加后,我通过IE访问OAB,https://localhost/OAB,时仍然提示有问题。

4、接下来,我尝试使用命令Get-OfflineAddressBook | Update-OfflineAddressBook更新一下脱机地址簿,并且重启了Mailbox服务器上Microsoft Exchange System Attendant服务。然后到Exchange mailbox服务器上,检查目录C:\Program Files\Microsoft\Exchange Server\V14\ExchangeOAB\oabguid查看生成的OAB文件的时间是否是最新。

《Exchange 2010 OAB下载问题排错error 0x80200049》

            检查发现,更新脱机地址簿后,Exchange Mailbox服务器上能够及时生成最新的LZX文件,说明Exchange mailbox服务器生成OAB是没有问题。

5、接下来,再检查Exchange CAS复制后端生成的OAB文件是否有问题,重启Exchange CAS服务器的“Microsoft Exchange 文件分发”和“Microsoft Exchange 通讯簿”。然后查看目录C:\Program Files\Microsoft\Exchange Server\V14\Client Access\OAB下是否正常复制最新OAB文件。

《Exchange 2010 OAB下载问题排错error 0x80200049》

  通过检查,Exchange CAS能够及时复制Exchange Mailbox服务器生成此LZX文件。说明Exchange CAS OAB分发没有问题。

6、通过上面检查,服务器生成和复制OAB没有问题,接下来就问题出现在OAB下载环节。为了确保用户能够正常访问OAB,通过浏览器https://mail.contoso.com/OAB/6f7c7005-5882-4316-9c57-0cbf7613017b/oab.xml访问OAB.xml文件(其中OAB GUID根据实际情况替换),如果能够正常打开该文件说明OAB访问是没有问题。测试结果是无法访问。

7、既然OAB访问存在问题,就应该是OAB虚拟目录访问存在问题。在此直接重置OAB虚拟目录。

《Exchange 2010 OAB下载问题排错error 0x80200049》

8、OAB虚拟目录重置完成后,再次检查OAB目录的权限,已经OAB虚拟目录的权限,均没有问题。再次通过浏览器访问https://mail.contoso.com/OAB/6f7c7005-5882-4316-9c57-0cbf7613017b/oab.xml,OAB.XML文件

《Exchange 2010 OAB下载问题排错error 0x80200049》

       能够正常访问OAB.xml文件。

9、接下来,再次使用Outlook 2010/2013客户端下载OAB,仍然提示错误0x80200049。此时直接无语。通过百度查找各种关于0x80200049的解决方法,解决方法都是重置OAB虚拟目录。

10、为了排除客户端问题,重新安装一台测试计算机,安装Outlook 2007客户端,然后使用测试账号下载OAB测试。测试结果让我没有想到的是既然成功了。

11、Outlook 2007能够下载成功,而Outlook 2010/2013不能下载成功,此时可以定位问题应该出现在客户端而不是服务器端。

     之前了解过Outlook 2007使用的是BITS服务器去下载OAB,而BITS处理进程的数量是有限制的,默认情况下每个账户能够发起60个队列。而我现在使用的是Outlook 2010/2013,不应该存在问题。于是,试探性使用命令:bitsadmin /reset   命令去取消当前用户拥有的传输队列中的所有作业。命令执行后,问题解决了。

   12、总结,通过了解发现,默认策略中“限制每个用户的最大BITS作业数”为60,我的理解是无论客户数使用的Outlook是什么版本,BITS的下载作业数为60,当客户端发起的作业数超过此限制时就会出现0x80200049错误的可能。

《Exchange 2010 OAB下载问题排错error 0x80200049》

 

 

三、总结

      目前经验解决0x80200049报错有两种方法:

1、重置OAB虚拟目录。

2、重置BITS作业数 bitsadmin /reset。(前提条件是服务器端OAB正常)

本文转自 jialt 51CTO博客,原文链接:http://blog.51cto.com/jialt/1784539

点赞