Msimsp.exe

生成修补程序包的建议方法是使用 Msimsp.exe 和 Patchwiz.dll 等修补程序创建工具。 Msimsp.exe 工具仅在面向 Windows Installer 开发人员的 Windows SDK 组件中提供。

Msimsp.exe 是一个调用 Patchwiz.dll 的可执行文件。 可以使用该工具通过传入修补程序创建属性文件(.pcp 文件)的路径以及要创建的修补程序包的路径,来创建修补程序包。 Msimsp.ex 还可用于创建日志文件和指定临时文件夹,用于创建修补程序包的转换、cab 压缩包和文件将保存在此临时文件夹中。

Msimsp.exe 的命令行语法为:

Msimsp.exe -s[.pcp 文件的路径]-p[.msp 文件的路径]{选项}

命令行选项不区分大小写,可以使用斜杠分隔符代替短划线。 如果未指定任何选项,Msimsp.exe 将显示摘要信息属性的当前值。

-s*[.pcp 文件的路径]*

此项是必需的,并且必须后接修补程序创建属性文件(.pcp 扩展名)的路径。 有关详细信息,请参阅 PatchWiz.dll

-p[.msp 文件的路径]

此项是必需的,并且必须后接要创建的修补程序包(.msp 扩展名)的路径。

-f[临时文件夹的路径]

可选。 后接临时文件夹的路径。 默认位置为 %TMP%\~pcw_tmp.tmp\。

-k

可选。 如果临时文件夹已存在,则会失败。

-l[日志文件的路径]

可选。 后接描述修补程序创建过程和错误的日志文件的路径。 有关详细信息,请参阅 UiCreatePatchPackage 的返回值

-lp[包含性能数据的日志文件的路径]

可选。 后接描述修补程序创建过程和错误的日志文件的路径。 此选项将性能数据写入日志文件。 此选项需要 4.0 版的 Patchwiz.dll。

-d

可选。 如果修补程序创建成功完成,则显示一个对话框。

-?

显示命令行帮助。

注意

如果安装包的 File 表的 File 列中的值只有大小写不同,则 Msimsp.exe 在调用 Makecab.exe 时可能失败。 Windows Installer 区分大小写,仅当 Comp1 和 Comp2 安装到不同的目录时,它才允许使用如下表中所示的安装包。 但是,在这种情况下,你不能使用 Msimsp.exe 或 Patchwiz.dll 为包生成修补程序,因为 Msimsp.exe 和 Patchwiz.dll 会调用 Makecab.exe,而这种调用不区分大小写。

避免创作安装包,例如下面的不完整 File 表

文件 Component_ FileName
readme.txt Comp1 readme.txt
ReadMe.txt Comp2 readme.txt

创建修补程序包

小型更新修补示例

Windows Installer 开发工具

已发布的版本、工具和可再发行组件