Jump to content


This is a ready-only archive of the InstallSite Forum. You cannot post any new content here. / Dies ist ein Archiv des InstallSite Forums. Hier können keine neuen Beiträge veröffentlicht werden.
Photo

Conditionally register DLL


1 reply to this topic

RomanD

RomanD
  • Full Members
  • 3 posts

Posted 08 September 2009 - 17:10

Hi,

I would like to know how to condiitonally register a DLL based on the whether the same DLL is already registered on the target machine.

The reason I am asking is because I am dealing with a vendor application that uses the same grid control that I am using. Whenever I deploy my application and register the control, the vendor application breaks. (My application works fine whenever the vendor DLL is (re)-registered).

Thanks in advance,

--Roman

Using InstallShield to deploy to Windows XP.

smc0862

smc0862
  • Full Members
  • 54 posts

Posted 20 October 2009 - 11:39

So you want to JUST conditionally register a DLL (or do you mean conditionally install/register a DLL?).

First thing is to establish if the vendor's copy of the DLL is installed and registered. You can use System Search to locate the file or if you know the CLSID that is registered in the registry you could search for that. If System Search is successful it set a property that you supply which can be used later.

Based on your findings above, the property from the System Search can be used on the condition for the component that contains your version of the same DLL. If you always want your version to be installed, but not registered if the other vendor's DLL was found (I do not recommend this though) then instead of putting a condition on the component, create a customer action that will run based on the property set from the System Search. The custom action can be a simple VBScript the runs REGSVR32 to register your copy of the DLL.