eeshwr
eeshwr

Reputation: 268

How can i pass parameter to from exe file to msi?

I have created an exe using bootstrapper. And now I want my installation be silent. I can install it in silent mode using msi file with the help of following command.

 msiexec /i Setup.msi /qn ADDLOCAL=freature

but I want to install mysetup.exe in silent mode. How can I pass the parameters to msi from bootstrapper so that installation would be in silent mode. I have goggled for hours but I couldn't figure out the way.

Upvotes: 1

Views: 3964

Answers (2)

Pablo Montilla
Pablo Montilla

Reputation: 3050

What you need is to define a Variable within your Burn bootstrapper. Using your example, you need something like this:

<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:bal="http://schemas.microsoft.com/wix/BalExtension">
<Bundle Name="Setup" Version="1.0.0.0" UpgradeCode="YOUR-GUID">

    <Variable Name="ADDLOCAL" bal:Overridable="yes"/>

    <BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense">
        <bal:WixStandardBootstrapperApplication />
    </BootstrapperApplicationRef>

    <Chain>
        <MsiPackage DisplayName="Setup" Name="Setup.msi" SourceFile="Setup.msi">
            <MsiProperty Name="ADDLOCAL" Value="[ADDLOCAL]" />
        </MsiPackage>
    </Chain>
</Bundle>
</Wix>

Now you can run Setup.exe -q ADDLOCAL=feature and the .msi will get that variable passed.

Upvotes: 2

Nimish
Nimish

Reputation: 719

Wix standard bootstrapper supports only these standard package switches->
-q, -quiet, -s, -silent = silent install
-passive = progress bar only install
-norestart = suppress any restarts
-forcerestart = restart no matter what (I don't know why this is still around)
-promptrestart = prompt if a restart is required (default)
-layout = create a local image of the bootstrapper (i.e. download files so they can be burned to DVD)
-l, -log = log to a specific file (default is controled by bundle developer) -uninstall = uninstall
-repair = repair (or install if not installed)
-package,-update = install (default if no -uninstall or -repair)
Reference

Upvotes: 1

Related Questions