Reputation: 1059
I created wix installer for en-US and fr-FR cultures. Installer has custom action which check is some application launched. If it launched it calls Session.Message(Retry|Cancel) from javascript.
Separately en-US.msi and fr-FR.msi installers work fine(Retry and Cancel buttons have localization). But when i make "Morphing installers" http://wix.tramontana.co.hu/tutorial/transforms/morphing-installers it doesn't work(Retry and Cancel buttons haven't localization).
Notes: 1) Title for Session.Message has translation(As i right understand i correct build "Morphing installer" and launch it from command line). 2) After some experiments i added UIRef Id="WixUI_Minimal" to my installer. This hack added some additional dialogs and translation for Session.Message buttons too. But this hack works only for install for uninstall it doesn't work.
PS: I tried to use standard CloseApplication from utils, but it doesn't suitable(Ignore button should be hidden). Localization work fine. If anybody know how it can be hidden it is too good solution.
Upvotes: 0
Views: 314
Reputation: 1059
Problem was solved by replace custom action atribute Execute='deferred' to Execute='immediate'.
Thanks.
Upvotes: 0
Reputation: 2099
As you already have the transform file, you could try the method describe in Multi-Language MSI-packages without Setup.exe launcher. Here the language ids are also set for all languages in the summary information stream, which could be the cause of the problem.
One caveat though: the method itself is not supported by Microsoft (although they are using this method themselves and I didn't have any problems with this yet) and the decision which language to use is made based on the localization formats in the Regional Options and not based on the GUI language.
I don't know if this solves the problem with the custom action, but it is worth a try, as it will set the language of the installation package.
Upvotes: 1