0
votes

I implemented Custom Action DLL that needs to run when the product is being unistalled or reinstalled. Custom Action DLL (C++) references third party library which is a COM object that needs to be also registered.

I have 2 questions: 1. How do I include third party library into installer package? I'd prefer if the file were not visible to the user. 2. How do I make sure that 3rd party library is still around when Custom Action DLL runs during unistall? CustomAction is run before 'InstallFinalize'.

1
This really sounds like a recipe for disaster. Every day I answer questions from people who get stuck and can't uninstall their product and it usually starts off with a requirement / design like this.Christopher Painter

1 Answers

0
votes

You should not be installing 3rd party controls unless the control provider has a redist agreement saying it is allowed. If installing the control requires anything beyond placing the file in your own application install location (such as requiring registry keys) then you really need to get an MSM from the control provider.

After that, you would have to schedule your custom action to run after WriteRegistryValues on install and before RemoveRegistryValues on uninstall. The solution you get end up iwth is likely to be pretty fragile so be careful and good luck (and you might try to remove the requirement from the product in the future).