Installing BoundsChecker 8 on Windows 7 x64
I had real pain installing DevParther Studio Professional Edition
for its BoundsChecker 8 component under Windows 7 64 bit.
MSI installations fortunately can be debugged with
msiexec /i "Compuware DevPartner Studio Professional Edition.msi" /lvx log2.txt
Searching for ‘1603’ in log file helps finding the error location.
First of all, after installing the .NET Framework 1.1, it refues
to isntall saying that Boundchecker was already installed, which was
not true.
Turns out, that it checks for
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\NuMega\BoundsChecker
key, which has been set during .NET Framework installation to
mark that it had been installed.
But that in turn makes further setup atempts impossible.
So first problem was resolved by deleting above mentioned key.
Next, it went further, but rolled back during writing registry keys.
According to the log, it had problems overwriting a CLSID key
of MSXML3 parser:
MSI (s) (54!A8) [20:17:50:008]: Creating MSIHANDLE (12522) of type 790531 for thread 2984
Finding the key CLSID\{2933BF90-7B36-11d2-B20E-00C04F983E60}\SideBySide; the result is: 5
MSI (s) (54!A8) [20:17:50:009]: Closing MSIHANDLE (12522) of type 790531 for thread 2984
MSI (s) (54!A8) [20:17:50:009]: Creating MSIHANDLE (12523) of type 790531 for thread 2984
AddRefcountMsxml returns the code 5
So,next, I had to change the owner of the following Registry key
(which is owned by TrustedInstaller) to Administrators group and then
allow full access to everyone for this key:
HKEY_CLASSES_ROOT\Wow6432Node\CLSID\{2933BF90-7B36-11D2-B20E-00C04F983E60}
Next, it went a bit further but stopped at:
MSI (s) (54!50) [20:48:20:465]: Creating MSIHANDLE (15175) of type 790531 for thread 4176
PerformTypeLib Name: 'msxml3.dll' LibDir: 'C:\Windows\SysWOW64\' HelpDir: 'C:\Windows\SysWOW64\'
MSI (s) (54!50) [20:48:20:466]: Closing MSIHANDLE (15175) of type 790531 for thread 4176
MSI (s) (54!50) [20:48:20:468]: Creating MSIHANDLE (15176) of type 790531 for thread 4176
PerformTypeLib failed with error code 11 and function code 0x8002801C.
Error code 0x8002801C is TYPE_E_REGISTRYACCESS
Fired up Process Monitor and checked where there is access denied
for msiexec.exe furing installation. Turned out to be:
MsiExec.exe 2588 RegCreateKey HKCR\TypeLib\{F5078F18-C551-11D3-89B9-0000F81FE221}\3.0\HELPDIR ACCESS DENIED Desired Access: Maximum Allowed
So I did the same Permission adjustment for the key
HKCR\TypeLib\{F5078F18-C551-11D3-89B9-0000F81FE221}\3.0
in the registry so allo everyone to access it.
Finally, installation finished properly. However I wasn’t very happy with it on Win 7 anyway, as the dpinject64.sys driver that gets installes crashes the system and makes it stuck. Maybe it can be fixed, but I then gave up on it. Seems that a new version is needed.