Introduction to Msiexec.exe

The Windows Installer technology uses Msiexec.exe        for installing MSI and MSP packages. This tool gives you full control        over the installation process, allowing you to set:

  • install options (install, uninstall, administrative install,          advertise a product)
  • display options (full, basic or no UI during the          installation)
  • restart options (if the machine will be restarted after the          installation)
  • logging options
  • update options (apply or remove updates)
  • repair options (only for an installed package)
  • public properties which are used          by the installation

The usual form of the msiexec command line is this:

msiexec.exe <install_option> <path_to_package> [package_parameters]

Install Options

When launching an installation package, you can set the          install type through these options:

msiexec.exe [/i][/a][/j{u|m|/g|/t}][/x] <path_to_package>
  • /i - normal installation
  • /a - administrative install
  • /j - advertise the product
    • u -              advertise to the current user
    • m - advertise to all users
    • /g - the language identifier used by the              advertised package
    • /t - apply transform to advertise            package
  • /x - uninstall the package

Sample command line:

msiexec.exe /i "C:\Example.msi"

Display Options

The user interface level of the installation can be          configured according to the target environment. For example, a package          distributed to clients should have a full UI, while a package deployed          through Group Policy should have no user interface. Msiexec.exe sets          the UI level of the installation through these options:

msiexec.exe /i <path_to_package> [/quiet][/passive][/q{n|b|r|f}]
  • /quiet - quiet mode (there is no user            interaction)
  • /passive - unattended mode (the installation shows            only a progress bar)
  • /q - set the UI level:
    • n - no              UI
    • b - basic UI
    • r - reduced UI
    • f - full UI

Sample command line:

msiexec.exe /i "C:\Example.msi" /qn

Restart Options

Sometimes an installation overwrites files which are in use          or needs to reboot the machine in order to finish it. The reboot          policy used by the installation can be set through these          options:

msiexec.exe /i <path_to_package> [/norestart][/promptrestart][/forcerestart]
  • /norestart - the machine will not be restarted            after the installation is complete
  • /promptrestart - the user will be prompted if a            reboot is required
  • /forcerestart - the machine will be restarted after            the installation is complete

Sample command line:

msiexec.exe /i "C:\Example.msi" /norestart

Logging Options

When debugging an installation package you can use multiple          logging parameters in order to create a            log. This log will contain different information for each          parameter you use:

msiexec.exe [/i][/x] <path_to_package> [/L{i|w|e|a|r|u|c|m|o|p|v|x+|!|*}][/log] 
<path_to_log>
  • /L - enable logging
    • i - include              status messages
    • w - include non-fatal warnings
    • e - include all error messages
    • a - mention when an action is started
    • r - include action-specific records
    • u - include user requests
    • c - include the initial UI parameters
    • m - include out-of-memory or fatal exit              information
    • o - include out-of-disk-space messages
    • p - include terminal properties
    • v - verbose output
    • x - include extra debugging information
    • + - append to an existing log file
    • ! - flush each line to the log
    • * - log all information, except for                 v and x options
  • /log - the equivalent of /l*

Sample command line:

msiexec.exe /i "C:\Example.msi" /L*V "C:\package.log"

Update Options

The Windows Installer command line can apply or remove          updates (patches for example) through these options:

msiexec.exe [/p][/update][/uninstall[/package<product_code_of_package>]] 
<path_to_package>
  • /p - install a MSP patch. When installing a patch            silently, you need to set REINSTALLMODE property to "ecmus" and            REINSTALL to "ALL". Otherwise the patch will simply update the MSI            cached on the target machine.
  • /update - apply updates (if there are multiple            updates, you can separate them through the ";"            character).
  • /uninstall - remove an update for a product (if            there are multiple updates, you can separate them through the              ";" character)
    • /package -              specifies the package for which the update is            removed.

Sample command lines:

msiexec.exe /p "C:\MyPatch.msp"
msiexec.exe /p "C:\MyPatch.msp" /qb REINSTALLMODE="ecmus" REINSTALL="ALL"
msiexec.exe /update "C:\MyPatch.msp"
msiexec.exe /uninstall {1BCBF52C-CD1B-454D-AEF7-852F73967318} 
  /package {AAD3D77A-7476-469F-ADF4-04424124E91D}

NoteIn the above command line the first GUID is the Patch identifier          GUID and the second one is the Product Code of the MSI for which the          patch was applied.

Repair Options

If you have an installed package, you can use the Windows          Installer command line for repairing it:

msiexec.exe [/f{p|o|e|d|c|a|u|m|s|v}] <product_code>
  • /f - repair a package
    • p - repair              only if a file is missing
    • o - repair if a file is missing or an older              version is installed
    • e - repair if file is missing or an equal or              older version is installed
    • d - repair if a file is missing or a different              version is installed
    • c - repair if a file is missing or the checksum              does not match the calculated value
    • a - forces all files to be reinstalled
    • u - repair all the required user-specific              registry entries
    • m - repair all the required computer-specific              registry entries
    • s - repair all existing shortcuts
    • v - run from source and recache the local              package

Sample command line:

msiexec.exe /fa {AAD3D77A-7476-469F-ADF4-04424124E91D}

NoteIn the above command line the GUID is the Product Code of the MSI          which will be repaired.

Set public properties

The name of a public property contains only uppercase letters          (for example PROPERTY). This type of properties          can be set through the command line like this:             PROPERTY="value".

Sample command line:

msiexec.exe /i "C:\Example.msi" MY_PROP="myValue"
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值