I’m getting the message “library not registered” when attempting to open a navigator in quickbooks with errors on the various qpg files that it tries to open. On speaking to their tech support who had me remove the software, install it, install in safe mode, remove, reinstall in normal mode, then download the updates again (thankfully I had saved the 80mb patch file to disk so I didn’t have to download it again) he then recommended that I repair Internet Explorer as this was the problem. Unfortunately you can’t repair IE in xpsp2 (see KB318378 so I reinstalled xpsp2 again.
At this point, he admitted, several times, that NOONE in support can tell me what ocx’s or dll’s are required by the various pages used in the Navigator pages. I asked who could tell me which files are needed, but he kept telling me to repair internet explorer instead.
I’ve heard Intuit’s support is notoriously bad and I now believe it. I would have expected him to check my internet explorer security settings, popupblocker settings and it was only after about 40 minutes on the phone that he checked what version of quickbooks I was using (pressing F2 gives that information)
He was not interested in the fact that there was an incompatibility issue with Quickbooks Premier 2002 and Windows NT and that I am getting the same type of message. Unfortunately in this case, the pc that has a working copy of quickbooks and the faulty pc have the same version of comcat.dll
From the sounds of it, there is a permission problem in the registry under HKEY_CLASSES_ROOT\TypeLib\ but whereabouts I am not sure. It’s time to use regmon from sysinternals again to monitor for access denied messages when launching quickbook navigators.
Solution in the extended entry
As it turned out there were far too many problems with not enough access in the registry and also it seemed quicker to just set permissions on HKCR\typelib and HKCR\Interface directory to give the owner permissions. The problem was just how to do it? The regedit interface seemed to have issues in trying to edit permissions when it didn’t have permission to see the existing permissions. I knew that cacls would do the trick on files so a quick search later I came up with subinacls which seems to be cacls on steroids and works on registry entries too (amongst other things).
Downloading subinacls from microsoft was necessary as the version in the resource kit does not work properly (at all in my case) so a useful site to look at is Analog Duck’s documentation which tells you how to run the program.
After running a couple of display tests I ran the following (as administrator) :-
subinacl /subkeyreg hkey_classes_root\interface /grant=domain\user=f
subinacl /subkeyreg hkey_classes_root\typelib /grant=domain\user=f
Then I logged on as the user and quickbooks worked fine.
These instructions are overkill in that too many permissions are given to the user, but the user is unlikely to mess about in the registry and this solves a lot of other software issues too and I’ve already spent far too long trying to get this working.