cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
marqdouj
Level 3

COM Interop = 'Yes' does not work

I'm trying to install a .Net com interop dll for use with VB6. On the 'Components' page I've set the '.NET Com Interop' value to 'Yes'.

I run the setup file on the machine with VB6 and I don't see the control in the VB6 selection dialog. If I manually run regasm.exe on the installed dll then the VB6 dialog shows the component and all works well.

Is there something else I need to do to get installshield to run regasm against the dll after it installs?

Doug.
Labels (1)
0 Kudos
(2) Replies
Christopher_Pai
Level 16

Usually when I have problems like this it's because of a (bad) behavior in RegAsm. InstallShield calls regasm /regfile during the build then pushes the data into the registry table. But there is a limitation:

http://msdn.microsoft.com/en-us/library/tzat5yw6(v=vs.71).aspx

Remarks

You can use the /regfile option to generate a .reg file that contains the registry entries instead of making the changes directly to the registry. You can update the registry on a computer by importing the .reg file with the Registry Editor tool (Regedit.exe). Note that the .reg file does not contain any registry updates that can be made by user-defined register functions.


-----

Use a registry snapshot / differencing tool to indentify the additional registry entries that are created when you run regasm without /regfile on the machine after the install. Then take that data and author it into your installer.

Rebuild, reset test platform and redeploy... it generally should work now.
0 Kudos
marqdouj
Level 3

Makes me wonder why IS does not simply shell out the dll to regasm instead of using the /regfile method - I figure that would solve the issue?

In any case, I guess I will have to figure out some way to tell IS to do this (via script?).

Doug.


Christopher Painter wrote:
Usually when I have problems like this it's because of a (bad) behavior in RegAsm. InstallShield calls regasm /regfile during the build then pushes the data into the registry table. But there is a limitation:

http://msdn.microsoft.com/en-us/library/tzat5yw6(v=vs.71).aspx


-----

Use a registry snapshot / differencing tool to indentify the additional registry entries that are created when you run regasm without /regfile on the machine after the install. Then take that data and author it into your installer.

Rebuild, reset test platform and redeploy... it generally should work now.
0 Kudos