UiCreatePatchPackageEx (Patchwiz.dll)
UiCreatePatchPackageEx 函数获取包创建文件(.pcp 文件)并生成 Windows Installer 修补程序包(.msp 包)。 建议使用 Patchwiz.dll 时调用 Msimsp.exe。
UiCreatePatchPackageEx 函数从 Patchwiz.dll 版本 4.0 开始可用,并扩展了 UiCreatePatchPackage 函数的功能。
UINT UiCreatePatchPackageEx(
LPCTSTR szPcpPath,
LPCTSTR szPatchPath,
LPCTSTR szLogPath,
HWND hwndStatus,
LPCTSTR szTempFolder,
BOOL fRemoveTempFolderContents,
DWORD dwFlags,
DWORD dwReserved
);
参数
-
szPcpPath
-
此修补程序的修补程序创建属性文件(.pcp文件)的完整路径。
-
szPatchPath
-
要创建的 Windows Installer 修补程序包(.msp文件)的完整路径。 此参数可以是 NULL 或空字符串,但不能省略。 如果该值为 NULL 或空字符串,则该函数将使用属性表 (Patchwiz.dll) 中 PatchOutputPath 的值。
-
szLogPath
-
要追加的文本日志文件的完整路径。 此参数可以是 NULL 或空字符串,但不能省略。
-
hwndStatus
-
显示状态文本的窗口的句柄。 此参数可以是 NULL 或空字符串,但不能省略。
-
szTempFolder
-
临时文件的位置。 此参数可以是 NULL 或空字符串,但不能省略。 用户必须有足够的权限读取和写入该文件夹。 默认位置为 %TMP%\~pcw_tmp.tmp\。
-
fRemoveTempFolderContents
-
如果为 TRUE,请删除临时文件夹及其所有内容(如果有)。 如果为 FALSE,并且文件夹存在,则该函数将失败。
-
dwFlags
-
此参数可以设置为以下值之一或组合,以指定日志记录或用户界面选项。
标志 值 含义 LOGNONE 0x00000000 不向日志中写入任何消息。 LOGINFO 0x00000001 将信息性消息写入日志。 LOGWARN 0x00000002 将警告写入日志。 LOGERR 0x00000004 将错误消息写入日志。 LOGPERFMESSAGES 0x00000008 将性能消息写入日志。 UINONE 0x00000000f 不显示用户界面。 UIALL 0x00000010 显示用户界面。 -
dwReserved
-
保留。 该参数必须设置为零。
返回值
请参阅 UiCreatePatchPackage 的返回值中的表。
备注
有关创作 .pcp 文件和使用 UiCreatePatchPackage 生成 Windows Installer 修补程序包的示例,请参阅小型更新修补示例一节。
创建修补程序需要未压缩的安装映像,例如管理映像或 CD-ROM 中的未压缩安装映像。 UiCreatePatchPackage 不会为文件柜中的文件生成二进制修补程序。