This is a convoluted scenario:
We have a project that installs a VB6 application, and about 30 OCX components (some are system components, some are custom).
On XP, it runs fine and the application starts up with no problems.
On Windows 7, it runs fine if the user has administrator rights. If the user does not, the application crashes following installation. We brought in a contact from Microsoft, who determined there were some missing registry entries. We later found out that some of the 30 OCX components weren't registered properly either (but we haven't yet determined if it is 1 or 2 or some combination of all 30).
I updated the installer so that it copies the registry import file to the INSTALLDIR, and then use a custom action to execute "reg import <file>". Based on what I see in the log file when installing, and in looking in the registry, it appears to work.
I also updated the installer so that it copies a CMD file to INSTALLDIR, and then use an InstallScript to run LaunchAppAndWait to run the batch file. It's 30 regsvr32 calls (e.g. c:\windows\syswow64\regsvr32.exe c:\windows\syswow64\<filename>.ocx). By leaving the "/s" parameter off, I can confirm it runs because I have to click OK to the success message box each time.
But when I run the app as the user without admin privileges, the app fails - giving me an error that makes me think the OCX registration isn't actually happening.
The only way to get the application to work is to do the following:
1. Copy the MSI to the user desktop and install it - right click and select install, enter admin id and password when prompted
2. Copy the reg file fix to the user desktop - run regedit as an admin and import it
3. Copy the OCX CMD file to the user desktop and run it - right click and select run as admin, enter id/password
So, any ideas on what I might be doing wrong in the installer that isn't letting the OCX registration work as expected?
Thanks,
Glenn Harland
NYS Office of Mental Health
We have a project that installs a VB6 application, and about 30 OCX components (some are system components, some are custom).
On XP, it runs fine and the application starts up with no problems.
On Windows 7, it runs fine if the user has administrator rights. If the user does not, the application crashes following installation. We brought in a contact from Microsoft, who determined there were some missing registry entries. We later found out that some of the 30 OCX components weren't registered properly either (but we haven't yet determined if it is 1 or 2 or some combination of all 30).
I updated the installer so that it copies the registry import file to the INSTALLDIR, and then use a custom action to execute "reg import <file>". Based on what I see in the log file when installing, and in looking in the registry, it appears to work.
I also updated the installer so that it copies a CMD file to INSTALLDIR, and then use an InstallScript to run LaunchAppAndWait to run the batch file. It's 30 regsvr32 calls (e.g. c:\windows\syswow64\regsvr32.exe c:\windows\syswow64\<filename>.ocx). By leaving the "/s" parameter off, I can confirm it runs because I have to click OK to the success message box each time.
But when I run the app as the user without admin privileges, the app fails - giving me an error that makes me think the OCX registration isn't actually happening.
The only way to get the application to work is to do the following:
1. Copy the MSI to the user desktop and install it - right click and select install, enter admin id and password when prompted
2. Copy the reg file fix to the user desktop - run regedit as an admin and import it
3. Copy the OCX CMD file to the user desktop and run it - right click and select run as admin, enter id/password
So, any ideas on what I might be doing wrong in the installer that isn't letting the OCX registration work as expected?
Thanks,
Glenn Harland
NYS Office of Mental Health