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

Cannot register a DLL after Installing into GAC?

Hi,
i am trying to Install a DLL from IS2015 and I have a .Net Dll which i need to put it into GAC and register the DLL, But i am able to put it into GAC (%WINDIR%\Microsoft.NET\assembly\GAC_MSI)folder but i cannot register the DLL from the location.
I have read and tried from the forums but could not achieve this.

What i have Tried:
1. Creted a GlobalAssemblycache folder in IS2015 and tried install/register from the %windir%\Microsoft.NET\assembly\GAC_MSIL
2. created a custom action and tried to execute "Installutil -i mydll.dll"
3. created a supporting batch file and added as new component and tried to execute batch file from command prompt. i added a custom action to run the batch file.
4. Also tried to do with Self-register check in properties of the DLL.
5. Set COM extract to build to TRUE

Can anyone please let me know if i am missing anything to register the DLL in GAC folder after putting DLL to GAC folder?
Thank you for the help!!
Labels (1)
0 Kudos
(2) Replies
chad_petersen
Level 9

It sounds to me like you might need to set ".NET COM Interop" to "Yes" instead of the default "No". Once you click on that Setting then you can read what it does.

Here's a copy of what it says

Specify whether you want to use COM interoperation (the ability to call .NET objects from COM) for the component.
For example, if you have a Visual Basic .NET class library that defines the ComClass attribute and contains at least one public (COM-callable) function, you can select Yes for this setting; InstallShield extracts the COM Interop information at build time and adds it to the Registry table of your .msi database. At run time, registry entries that allow COM objects to call your .NET assembly are created on the target system.

Note: This setting is applicable only if the component's key file (help topic: IHelpSetKeyFile.htm) is a .NET assembly.


Chad
0 Kudos
Krishnan_KM
Level 4

Yes, above two steps are correct.

Regards
Tulasikumar
0 Kudos