cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
droland
Level 4

Install Main Applcation + install language update and uninstall all of them

Hello,

I have a Basic MSI project. Our auto build server creates new installer everyday (if any components were changed). These have auto incremented version number and different product code because we don't want to upgrade our products. So old version is always uninstalled and new version is installed ....

I have to create Language "update". It includes some resource dll and help file but never overwrites any components in "main" installation. The version number are same both main and language update (created by auto build server). We have to support alot of languages at the same time on the same computer so I think we have to generate msi installers with different product code for every languages. It is not problem... but how can I remove language updates from main installer if the user wants to uninstall main application?

I can find installed Language update instances in registry under uninstall keys. I created two custom action (CA):

1:
FindAndUninstallLangUpdates it is a dll calling
It looks for product codes of installed language updates and call 2nd CA to uninstall them one by one.

2:
UninstallLanguageUpdate:
MSIEXEC.EXE /uninstall [LANGUPDATE] /quiet
The LANGUPDATE is a property and it was set by 1st CA with language update product code

It works fine until I call them during UI before "ExecuteAction" standard action, but I try do it during quiet uninstallation the UI section won't run. If I call them in the Execute Sequence it says "Another installation is being installed... please wait ... finished." So I can not remove them.

What is the "best practice"? How can I remove related (language) installations from main installer during quiet mode uninstallation?

Thanks.
Labels (1)
0 Kudos

(2) Replies
gbaltazar
Level 6

You won't be able to initialize more than one msiexec process during the Execute Sequence. That is why your quiet mode custom actions will fail. What you can do is create a setup launcher that can send uninstall commands to your language packs, then calls your main app installation/uninstallation.
0 Kudos
droland
Level 4

Hello,

We would like generate a single msi installer only. Isn't there any other method? Perhaps, do we manage installers wrongly? Do you know a better solution?

Thanks.
0 Kudos