Checking Stores Connectivity to Exchange RRS feed

  • Question

  • Hello, I have an add-in that needs to index stores inside of Outlook. Majority of the users are using Exchange, there is an issue when the internet isn't connected and users start to begin indexing (errors are thrown saying Microsoft Exchange is not available, etc..the normal Object reference errors). 

    Is there a way I can detect the store's connectivity to Exchange? I am aware of the OlExchangeConnectionMode enum, but that applies to Outlook's connectivity...I would like to ideally just test if the store can be connected and process that store, if another store is found to be disconnected from Outlook I would just skip processing. 

    Also note that I am retrieving the store from the RDO Session. The peculiar thing is that when I have turned on my Cached Exchange mode, I can get the Store via Outlook Object Model but when I make a call to RDO Session's "GetStoreFromID" error is thrown. 

    Tuesday, November 4, 2014 7:09 PM

All replies

  • Hello Rahul,

    The Outlook object model doesn't provide such information on the per-store basis. You can use the ExchangeConnectionMode property of the Namespace class to detect the current state. Also you may find the InternetGetConnectedState function available in the wininet.dll assembly helpful.

    As for Redemption, I'd suggest contacting the Redemption developer directly at .

    Tuesday, November 4, 2014 7:30 PM
  • Rahul,

    are you using the same session used by Outlook? Do you set RDOSession.MAPIOBJECT to Namespace.MAPIOBJECT from Outlook or call RDOSession.Logon / LogonExchangeMailbox? Also, is this is the primary or a delegate store in the profile? In the latter case, are delegate mailboxes set to be cached in  the Exchange account options?

    Dmitry Streblechenko (MVP)
    Redemption - what the Outlook
    Object Model should have been
    Version 5.5 is now available!

    Wednesday, November 5, 2014 2:06 PM
  • Hello Dmitry, 

    I am using the same session by Outlook (I do set the RDO MAPIOBJECT to the namespace's MAPIOBJECT). 

    I also have called RDOSession.LogOn. I did not however use the LogonExchangeMailbox. 

    it is a primary store in the profile, not delegate. 

    Saturday, November 8, 2014 8:55 AM
  • If the primary store is cached, and you are using the Outlook session (through RDOSession.MAPIOBJECT), you will not have connectivity issues. It should work even with the network cable unplugged.

    Dmitry Streblechenko (MVP)
    Redemption - what the Outlook
    Object Model should have been
    Version 5.5 is now available!

    Saturday, November 8, 2014 5:07 PM