Problems with BESx – openmsgstore() failed

12 Oct

A lot of people have blogged about problems with BESx and I had similar MAPI problems to everyone else. I tried literally everything yet I was still getting errors. PIN Messages would go through to the BlackBerry’s just fine, but emails failed. The event log was full of “Agent 1: Will not restart – reached the maximum of 10 restarts per 24 hours”

Further investigation (and after rebuilding another BESx server from scratch and re applying for a new licence code – in case the previous one had been blacklisted) led me too a few utilities included in with the software (C:\Program Files\Research in Motion\BlackBerry Enterprise Server\Utility)

  • HandHeldWipe.exe
  • IEMSTest.exe

When running these utilities from the command line I was getting “openmsgstore() failed”. Upon further investigation, having previously followed the Exchange BPA, I was advised to tie down Exchange to allow only certain versions of Outlook to connect, making the security a bit tighter. However, it turns out that this then stopped the BESx server connecting to mailboxes.

The change to Exchange was pretty simple, simply locate the registry location:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSExchangeIS\ParametersSystem

And then add the key “Disable MAPI Clients”.

And then in the value field, simply add in the versions you want to block, or if you want to block a range, use x – x etc. Adding 0 – 11.0.8161.0 is a bad idea if you like BESx working though.

Release              Emsmdb32.dll Version
Office XP RTM       10.0.2627.1
Office XP SP1        10.0.3416.0
Office XP SP2        10.0.4115.0
Office XP SP3        10.0.6515.0
Office 2003 RTM    11.0.5604.0
Office 2003 SP1     11.0.6352.0        
Office 2003 SP2     11.0.6555.0
Office 2003 SP3     11.0.8161.0
Office 2007 RTM    12.0.4518.1014
Office 2007 SP1     12.0.6211.1000
Office 2007 SP2     12.0.6423.1000

Hopefully this will save some other people wasting their time trying to fix it.

The guide I used to restricting the MAPI versions can be found here. Be very careful though!