Learn Exchange the Guru way !!!


Exchange 2013 OAB troubleshooting: Task reported error (0x8004010F): ‘The operation failed. An object cannot be found.’

In my experience, I’ve never had to face an OAB download issue with exchange 2013. This was the first ever.

Exchange team did an excellent job with OAB in Exchange 2013 and made troubleshooting process very seamless.

OAB download wasn’t working on a domain joined and non-domain joined machine.

Error: Task reported error (0x8004010F): ‘The operation failed. An object cannot be found.’


Happening for one user or all users?

Happening on one Outlook client or all outlook clients?

Is Outlook updated to the latest version and service pack?

OAB broke internally/externally/both?

When you have an issue with OAB, first thing to check is whether you can see the address list you’re trying to download in Outlook. If it’s missing, outlook just can’t locate the OAB to download.


Data collection:

Let’s collect some data and ensure all settings are configured the way it is supposed to be

1. Make sure authentication settings and URL’s are setup properly:

Get-OabVirtualDirectory -ADPropertiesOnly | ft Identity, *Auth* -AutoSize

2. Make sure URL’s are configured properly

Get-OabVirtualDirectory -ADPropertiesOnly | ft Identity, *url* -AutoSize

3. In Exchange 2013, OAB is processed by mailbox server role which owns the copy of the database of the Arbitration system mailbox with OAB PersistedCapabilities. OAB resides on the mailbox server in the folder “C:\Program Files\Microsoft\Exchange Server\V15\ClientAccess\OAB”. The database homing the System mailbox should be active and mounted. Clients will contact the mailbox server on which the OAB files are and downloads directly using AutoDiscover. The database can freely move to other mailbox servers if part of a DAG and the OAB files will be generated immediately for clients to download. In essence, this mailbox server becomes the OAB Generation server in Exchange 2013.

4.  Let’s now find out the state of the database on which the Arbitration mailbox resides:

Get-Mailbox -Arbitration | where {$_.PersistedCapabilities -like “*OAB*”} | ft Name, Servername, Database

Get-MailboxDatabaseCopyStatus MGUxxx

As shown in the screenshot Servername is MBX2 but the database is mounted on MBX1 which means clients will be contacting that server to download OAB.

5. It is also important to ensure all database have the OAB setup properly.

Use the CMDLET:

    Get-MailboxDatabase | Ft Name, *book*

If one or more databases do not have OAB setup, use the CMDLET to set OAB for it

Get-Mailboxdatabase | Set-MailboxDatabase -OfflineAddressBook “Default Offline Address Book”

6. If the issue is only affecting one or specific set of users, check and see if they have an OAB specified on their account:

Get-Mailbox ratish.nair | fl Name, OfflineAddressBook,Database

**This field is blank by default


  1. Test-ServiceHealth and ensure all required Exchange services are started
  2. Microsoft Exchange Mailbox Assistant service generates OAB on the server. Try restarting this service on the mailbox server homing the database copy of the Arbitration mailbox
  3. Try Updating OAB using the cmdlet: Update-OfflineAddressBook “Default Offline Address Book”
  4. You can create a new Offline address book and assign it to all the databases:

New-OfflineAddressBook -Name “EXCHANGE 2013 OAB” -AddressLists “\Default Global Address List” -VirtualDirectories “MBX3\OAB (Default Web Site)”

Get-Mailboxdatabase | Set-MailboxDatabase -OfflineAddressBook “EXCHANGE 2013 OAB”

5. Try to move the Arbitration mailbox Database to a different server using the cmdlet:

Move-ActiveMailboxDatabase MGU -ActivateOnServer MBX3

Now navigate to the location of OAB and ensure the folder is there.

CAS role accepts the OAB download request from clients and proxies to a Mailbox role server. CAS maintains a log of each request it handles in the log files, present in %ExchangeInstallPath%\Logging\HttpProxy\OAB\. You can open this log in excel and review results.

6. Move the Arbitration mailbox to a new mailbox database

Get-Mailbox -Arbitration -Database DB10 | where {$_.PersistedCapabilities –like “*OAB*”} | New-MoveRequest -TargetDatabase DB12

7. Create a new OAB Gen Arbitration mailbox

New-Mailbox -Arbitration -Name “OABGen” -UserPrincipalName OABGen@exchguru.local –DisplayName “OAB Generation Mailbox” -Database DB30

Set-Mailbox -Arbitration OABGen@exchguru.local -OABGen $true

8. As always, your best friend in troubleshooting is none other as “TestEmailAutoConfiguration” tool in Outlook.

Take a look at the video @ 31.31 minute and understand the Outlook connection process and then jump to using Test email auto configuration with Outlook.

Outlook connection process:

TestEmailAutoConfiguration tool:

If AutoDiscover is not able to retrieve the AutoDiscover.XML file with all URL’s to Outlook, then the client will have trouble – not just with OAB but with EWS and other features.

Review the Authentication settings on both Default website and Exchange backend in IIS

Exchange 2013: HTTP redirection issues with ECP virtual directory – /owa/ecp:

Authentication on Default Website and Exchange backend should be Windows Authentication

HTTP Redirect should be disabled:

SSL should be enabled:

Ratish Nair

Microsoft MVP | Exchange Server


Keywords: Exchange 2013 OAB, How to troubleshoot Exchange 2013 OAB, Exchange 2013 Offline address book, Offline address book issues with Exchange 2013

17 Responses to “Exchange 2013 OAB troubleshooting: Task reported error (0x8004010F): ‘The operation failed. An object cannot be found.’”

  1. NeWay Technologies – Weekly Newsletter #72 – December 5, 2013 | NeWay Says:

    […] Exchange 2013 OAB troubleshooting: Task reported error (0x8004010F): ‘The operation failed. An obj… – […]

  2. NeWay Technologies – Weekly Newsletter #72 – December 6, 2013 | NeWay Says:

    […] Exchange 2013 OAB troubleshooting: Task reported error (0x8004010F): ‘The operation failed. An obj… – […]

  3. TechNet Blogs Says:

    […] Exchange 2013 OAB troubleshooting: Task reported error (0x8004010F): ‘The operation failed. An… […]

  4. Steve T Says:

    Great article Ratish. I followed all the steps and created a new arbitration mailbox and a new OAB and assigned the new OAB to the mailboxes, but I’m still getting the 0x8004010F error. I’ve also ensured all of the permissions were correct. The only thing that didn’t match up was the Exchange Backend Virtual directories. I only have the PowerShell virtual directory. I’m assuming this is my issue. Is there a way I can rebuilt the virtual directories?

  5. SteveT Says:


    I only have the OAB virtual directory underneath the default website on my CAS servers. There’s only a powershell virtual directory underneath the Exchange Backend directory. I’m assuming I need to rebuild these virtual directories on my CAS servers? If so, whats the best way to go about this?

  6. Ian Says:

    A fantastic article! Really helpful explaining how to fix corrupt OAB issues. Thank you very much!

  7. Disaster Recovery CAS and Data Bases, EXCHANGE 2013 | Guilherme Bach Says:

    […] […]

  8. Matthias Says:

    Hi, searching for a nearly similar Problem. Used Your guide to check OAB Generation Process – works. Outlook can download the OAB, if I use a new Profile. Some old Outlook Profiles can not download the OAB – is it possible to override the current OAB set in the Outlook Profile with a new OAB? This seems to be a Migration issue here.

  9. Prabhat Nigam Says:

    There can be multiple things. Basic rule is to keep OAB of the Exchange version assigned on the mailbox database. Then on the client side, download full OAB.

  10. Waqas Aftab Says:

    i was facing the same issue but i have create a new address book and apend that with databases and issue get fixed . For details please click on below mentioned link :

  11. Themiz Says:

    Dear Ratish,
    I have gone through your on how to troubleshoot OAB.But in my case all my users outlook client freezes when they try to select All users,All rooms.
    Appreciate if any one can suppport to resolve this issue.

  12. Jason Says:


    Great article.

    If I run: Get-Mailbox -Arbitration | where {$_.PersistedCapabilities -like “*OAB*”} | ft Name, Servername, Database

    I don’t get anything even with “*” – Should I remove the arb mailboxes and recreate them?

  13. Prabhat Nigam Says:

    Don’t remove any Arbitration mailbox. Rather create one for OAB.

  14. Prabhat Nigam Says:

    Thank you for contacting us.
    Let us know if the issue is still there and you are looking forward to a professional service to fix it.

  15. Greg Funk Says:

    We have a Exchange 2010 and Exchange 2013, now can’t get OAB to download. When I look at my account the OAB is missing and assigning it does not get error or fix the issue

  16. Prabhat Nigam Says:

    There could be many issues. I hope arbitration mailboxes are active.

  17. Salih Says:

    I installed the CU16 and the problem is resolved

Leave a Reply



Do NOT follow this link or you will be banned from the site!