msiexec
提供从命令行在 Windows Installer 上安装、修改和执行作的方法。
安装选项
设置用于启动安装包的安装类型。
语法
msiexec.exe [/i][/a][/j{u|m|/g|/t}][/x] <path_to_package>
参数
参数 | 说明 |
---|---|
/i | 指定正常安装。 |
/a | 指定管理安装。 |
/居 | 将产品播发给当前用户。 |
/jm | 将产品播发给所有用户。 |
/j/g | 指定播发包使用的语言标识符。 |
/j/t | 将转换应用于播发的包。 |
/x | 卸载包。 |
<path_to_package> |
指定安装包文件的位置和名称。 |
例子
若要使用常规安装过程从 C: 驱动器安装名为 example.msi 的包,请键入:
msiexec.exe /i "C:\example.msi"
显示选项
可以根据目标环境配置用户在安装过程中看到的内容。 例如,如果要将包分发到所有客户端进行手动安装,则应有完整的 UI。 但是,如果要使用组策略部署包,这不需要用户交互,则不应涉及任何 UI。
语法
msiexec.exe /i <path_to_package> [/quiet][/passive][/q{n|b|r|f}]
参数
参数 | 说明 |
---|---|
<path_to_package> |
指定安装包文件的位置和名称。 |
/安静 | 指定静默模式,这意味着无需用户交互。 |
/被动 | 指定无人参与模式,这意味着安装仅显示进度栏。 |
/qn | 指定安装过程中没有 UI。 |
/qn+ | 指定在安装过程中没有 UI,但末尾的最后一个对话框除外。 |
/qb | 指定在安装过程中有一个基本 UI。 |
/qb+ | 指定在安装过程中有一个基本 UI,包括最后一个对话框。 |
/qr | 指定在安装过程中减少的 UI 体验。 |
/fn | 指定安装过程中的完整 UI 体验。 |
注解
- 如果用户取消安装,则不会显示模式框。 可以使用 qb+! 或 qb!+ 隐藏 取消 按钮。
例子
若要安装包 C:\example.msi,请使用常规安装过程,无需 UI,请键入:
msiexec.exe /i "C:\example.msi" /qn
重启选项
如果安装包覆盖文件或尝试更改正在使用的文件,则安装完成后可能需要重新启动。
语法
msiexec.exe /i <path_to_package> [/norestart][/promptrestart][/forcerestart]
参数
参数 | 说明 |
---|---|
<path_to_package> |
指定安装包文件的位置和名称。 |
/norestart | 在安装完成后停止设备重启。 |
/promptrestart | 如果需要重新启动,则提示用户。 |
/forcerestart | 安装完成后重启设备。 |
例子
若要安装包 C:\example.msi,请使用正常安装过程,在末尾不重新启动,请键入:
msiexec.exe /i "C:\example.msi" /norestart
日志记录选项
如果需要调试安装包,可以设置参数以创建包含特定信息的日志文件。
语法
msiexec.exe [/i][/x] <path_to_package> [/L{i|w|e|a|r|u|c|m|o|p|v|x+|!|*}] <path_to_log>
参数
参数 | 说明 |
---|---|
/i | 指定正常安装。 |
/x | 卸载包。 |
<path_to_package> |
指定安装包文件的位置和名称。 |
/李 | 打开日志记录,并在输出日志文件中包含状态消息。 |
/lw | 打开日志记录,并在输出日志文件中包含非致命警告。 |
/乐 | 启用日志记录,并在输出日志文件中包含所有错误消息。 |
/洛杉矶 | 打开日志记录,并包含有关作何时在输出日志文件中启动的信息。 |
/lr | 打开日志记录,并在输出日志文件中包含特定于作的记录。 |
/路 | 打开日志记录,并在输出日志文件中包含用户请求信息。 |
/立法会 | 打开日志记录,并在输出日志文件中包含初始 UI 参数。 |
/lm | 打开日志记录,并在输出日志文件中包含内存不足或致命退出信息。 |
/瞧 | 打开日志记录,并在输出日志文件中包含磁盘空间不足的消息。 |
/lp | 打开日志记录,并在输出日志文件中包含终端属性。 |
/低压 | 打开日志记录,并在输出日志文件中包含详细输出。 |
/lx | 启用日志记录,并在输出日志文件中包含额外的调试信息。 |
/l+ | 打开日志记录并将信息追加到现有日志文件。 |
/l! | 打开日志记录并将每行刷新到日志文件。 |
/l* | 打开日志记录和记录所有信息,除了详细信息(/lv) 或额外的调试信息(/lx)。 |
<path_to_logfile> |
指定输出日志文件的位置和名称。 |
例子
若要安装包 C:\example.msi,请在提供的所有日志记录信息(包括详细输出)中使用常规安装过程,并将输出日志文件存储在 C:\package.log,键入:
msiexec.exe /i "C:\example.msi" /L*V "C:\package.log"
更新选项
可以使用安装包应用或删除更新。
语法
msiexec.exe [/p][/update][/uninstall[/package<product_code_of_package>]] <path_to_package>
参数
参数 | 说明 |
---|---|
/p | 安装修补程序。 如果要以无提示方式安装,则还必须将 REINSTALLMODE 属性设置为 ecmus,并重新安装为 ALL。 否则,修补程序只会更新目标设备上缓存的 MSI。 |
/更新 | 安装修补程序选项。 如果要应用多个更新,则必须使用分号分隔它们(;))。 |
/包 | 安装或配置产品。 |
例子
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}
其中第一个 GUID 是修补程序 GUID,第二个 GUID 是应用修补程序的 MSI 代码示例。
修复选项
可以使用此命令修复已安装的包。
语法
msiexec.exe [/f{p|o|e|d|c|a|u|m|s|v}] <product_code>
参数
参数 | 说明 |
---|---|
/fp | 如果缺少文件,则修复包。 |
/佛 | 如果缺少文件,或者安装了较旧版本,则修复包。 |
/铁 | 如果缺少文件,或者安装了相等版本或较旧版本,则修复包。 |
/fd | 如果文件缺失或安装了其他版本,则修复包。 |
/fc | 如果缺少文件,或者校验和与计算值不匹配,则修复包。 |
/发 | 强制重新安装所有文件。 |
/赋 | 修复所有必需的特定于用户的注册表项。 |
/调频 | 修复所有必需的计算机特定注册表项。 |
/司 司长 | 修复所有现有快捷方式。 |
/抗体 | 从源运行并重新缓存本地包。 |
例子
若要强制根据要修复的 MSI 错误代码重新安装所有文件,{AAD3D77A-7476-469F-ADF4-04424124E91D},键入:
msiexec.exe /fa {AAD3D77A-7476-469F-ADF4-04424124E91D}
设置公共属性
可以通过此命令设置公共属性。 有关可用属性以及如何设置它们的信息,请参阅 公共属性。