This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Re: How to register a COM Object in InstallScritpt MSI?
Subscribe
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Apr 29, 2008
10:39 AM
How to register a COM Object in InstallScritpt MSI?
I have an InstallScript MSI project and I need to register a .Net COM object, does anyone know how to do this?
(6) Replies
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎Apr 29, 2008
02:22 PM
Have you tried the com extraction option on the component? Or if this doesn't work you can extract the info to a registry file and then import that into the component. I like the com extraction at build time that way if the developer changes anything you will pick up the changes.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎May 01, 2008
02:17 PM
I have tried several things, but none of them work. I have the file set as a key file, and the options Extract at Build and .NET COM Interop set to YES, but when I build I'm getting build errors 6210 and 4354 (build unable to extract COM info from file). I have also tried changing the setting Extract at Build to NO, but I get the same build errors.
If I register the dll using regasm from a command line it works correctly. I have also tried to use the program RegSpyUI, but when I try to extract the COM infomation, nothing is displayed. Can anyone please help
If I register the dll using regasm from a command line it works correctly. I have also tried to use the program RegSpyUI, but when I try to extract the COM infomation, nothing is displayed. Can anyone please help
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎May 01, 2008
09:03 PM
Turn COM Extract at Build Off. That's for unmanaged libraries that expose a DllRegisterServer() function. .NET assemblies do not do this.
Try this thread: ( near the end )
http://community.acresso.com/showthread.php?t=180135&highlight=regasm
BTW you can always take the regfile generated by RegAsm and import it into the component.
Try this thread: ( near the end )
http://community.acresso.com/showthread.php?t=180135&highlight=regasm
BTW you can always take the regfile generated by RegAsm and import it into the component.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎May 02, 2008
07:35 AM
Christopher,
I created a separate component for this Com object and its dependant .Net dll, I set Extract COM at build to No and have .Net COM Interop set to Yes, and have manually created the registry and have the reg file set to Merge at Build, but when I build I'm now getting ~18 6204 errors indicating that the imported registry conflist with existing registry. How to I get rid of these errors?
I created a separate component for this Com object and its dependant .Net dll, I set Extract COM at build to No and have .Net COM Interop set to Yes, and have manually created the registry and have the reg file set to Merge at Build, but when I build I'm now getting ~18 6204 errors indicating that the imported registry conflist with existing registry. How to I get rid of these errors?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎May 02, 2008
07:44 AM
Unless you expect the COM Interop to be changing from build to build and you'll be calling RegAsm /regfile and reimporting the reg file for each build ( which if you are, I repeat none of this should be needed .... .NET COM Interop = Yes is meant to solve this problem ) there is no reson to select the REG File To Merge At Build attribute.
Instead just expand the component, Right Click On Registry Data, click on any ROOT HIVE and select import registry hive and step through the wizard.
Instead just expand the component, Right Click On Registry Data, click on any ROOT HIVE and select import registry hive and step through the wizard.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
‎May 02, 2008
08:10 AM
Christopher,
Yes, the file changes daily. I tried this yesterday, but for whatever reason, I was getting a host of build errors, so I thought I would try merging the reg file. I have removed that reference to the reg file, and the component is now successfully registering. Thank you very much for your help, I just wish some of this stuff was better documented. Thanks again.
Yes, the file changes daily. I tried this yesterday, but for whatever reason, I was getting a host of build errors, so I thought I would try merging the reg file. I have removed that reference to the reg file, and the component is now successfully registering. Thank you very much for your help, I just wish some of this stuff was better documented. Thanks again.