Showing results for 
Show  only  | Search instead for 
Did you mean: 
Level 2

COM Registration Fails in 2008, worked in X

We recently upgraded one of our product's InstallScript projects to InstallShield 2008 from InstallShield X, and we are having a few issues during the registration of an OCX and DLL file on Vista.

In the installer, we register a number of third-party OCX controls, using the "Self-Register" option. The project built in X would install fine on Vista.

Recently, a few changes were required for unrelated pieces of the project, so we made those changes in InstallShield 2008. However, we now receive a Self-Registration Error for two third-party files. Everything seems to work just fine on Windows XP. When the installer is run, Vista correctly prompts with UAC to elevate privileges.

The error we get on Vista is (text in brackets has been altered):
The following files did not self-register or unregister:

1. [path\to\our\file\filename.ocx]
Error accessing the OLE registry.

2. C:\Windows\system32\[filename].dll
Error accessing the OLE registry.

The DLL is NOT a file that is shipped with Vista. We register a number of other DLLs and OCX files, all of which seem to register properly. We only have an issue with two files. The files themselves have not been changed. To confirm, we rebuilt the old version of the installer with X using the same files and it worked fine.

Does anyone have any idea what the issue could be, and why it does not work in 2008 but did in X?

I've searched through the forums, and am having a hard time finding any clear answers. What is COM Extraction? Does that apply to InstallScript projects?

Thanks in advance.
Labels (1)
0 Kudos
(1) Reply
Level 2

An update:

I made a NEW test project that installs only the third-party OCX file, and it fails on Vista after UAC elevation. So this doesn't seem to be an issue with the upgrade.
0 Kudos