0

I'm implementing exe installer with two msi. During installation of first one user have to select value from ComboBox and I want to use selected value as parameter to run transformation on second msi. I'm using dotNetInstaller bootstrapper (with no UI) and have to configure msiexec parameters as TRANSFORMS="[variable from first msi]"

I tried to use system variable but it wan't work. How can I get ui-property value to transform second msi?

1 Answers1

0

Based on your current design, I'd say the simplest way is for the first MSI to store the property in a registry value and then have the second MSI ( or a transform of the second MSI ) read the registry value into a property.

Normally I'd have your boostrapper/chainer (EXE) do the UI and then pass the values to the child packages.

Christopher Painter
  • 54,556
  • 6
  • 63
  • 100
  • a can't read the property in the second MSI because I need it before I run second MSI. I need to have selected value in a variable that can be refer as parameter (ex.TRANSFORMS="%any_OS_variable%" or TRANSFORMS="#LANGUAGE" – user2992265 May 21 '14 at 13:29
  • If AppSearch isn't soon enough, have the EXE read the registry value and pass it to the second MSI. – Christopher Painter May 21 '14 at 13:41
  • the problem is that I don't know how can do do any custom action from dotNetInstaller. If I can run any cmd from my EXE then I can read the property from registry or even from a file, but I think it's not possible. – user2992265 May 21 '14 at 13:46
  • Then perhaps you should change dotNetInstaller out to Burn. – Christopher Painter May 21 '14 at 14:03
  • I tried to use burn but it has no options to hide burn UI :( – user2992265 May 21 '14 at 14:08