Can no longer open Domino-based AddressBook in Notes 8.5.2

Using Domino COM Toolkit in C# to retrieve AddressBook entries...

In previous versions of Lotus Notes, my application is able to retrieve the array of address books from the NotesSession object like this:

Array books = session.AddressBooks as Array;
foreach (NotesDatabase book in books)
  if (book.IsOpen == false)
// get entries

In our deployment, books is a two element array where the second element is the address book on the Domino server.  In Notes 8.5.1, this code is fine and my application can open the Domino address book and retrieve its entries.  However, in Notes 8.5.2, opening the Domino address book throws an exception when calling Open.

Oddly enough, neither 8.5.1 nor 8.5.2 Notes client can open an entry from the Domino address book, displaying the error dialog: "You are not authorized to perform that operation."

Does anyone have an explanation for this?  Is it possible that the API for 8.5.1 should be behaving similarly and was fixed in 8.5.2?
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Not sure, but security may have been tightened slightly.

1) If the clients can not access, then you need to have the Admin check the ACL and fix that first.

When the clients can access, then the same thing should work via the API

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Sjef BosmanGroupware ConsultantCommented:
Seems correct to me. What was the message thrown exactly?

This is probably nonsense, but could IsOpen be a function...

      if(!book.IsOpen()) {
jlalandeAuthor Commented:
IsOpen is a property and I have had that code in place for a few years without incident.  The failure is occurring on Open.

System.Runtime.InteropServices.COMException (0x80040FCB): Database open failed (CN=alpha-domino/O=test!!names.nsf)

Anyway, it definitely seems like a permissions issue and that 8.5.2 tightened up the API.
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Lotus IBM

From novice to tech pro — start learning today.