UiCreatePatchPackageEx (Patchwiz.dll)

The UiCreatePatchPackageEx function takes a package creation file (.pcp file) and generates a Windows Installer patch package (.msp package). Calling Msimsp.exe is the recommended method for using Patchwiz.dll.

The UiCreatePatchPackageEx function is available beginning with Patchwiz.dll version 4.0 and extends the functionality of the UiCreatePatchPackage function.

UINT UiCreatePatchPackageEx(
  LPCTSTR szPcpPath,              
  LPCTSTR szPatchPath,            
  LPCTSTR szLogPath,             
  HWND hwndStatus,                
  LPCTSTR szTempFolder,           
  BOOL fRemoveTempFolderContents,
  DWORD dwFlags,
  DWORD dwReserved    
);

Parameters

szPcpPath

Full path to the patch creation properties file (.pcp file) for this patch.

szPatchPath

Full path to the Windows Installer patch package (.msp file) that is to be created. This parameter may be NULL or an empty string but may not be omitted. If it is NULL or an empty string, the function uses the value of PatchOutputPath in the Properties Table (Patchwiz.dll).

szLogPath

Full path to a text log file that will be appended. This parameter may be NULL or an empty string but may not be omitted.

hwndStatus

Handle to a window that displays the status text. This parameter may be NULL or an empty string but may not be omitted.

szTempFolder

Location for temporary files. This parameter may be NULL or an empty string but may not be omitted. The user must have sufficient privileges to read and write to this folder. The default location is %TMP%\~pcw_tmp.tmp\.

fRemoveTempFolderContents

If TRUE, remove the temporary folder and all of its contents if present. If FALSE, and folder is present, the function fails.

dwFlags

This parameter can be set to one or a combination of the following values to specify logging or user interface options.

Flag Value Meaning
LOGNONE 0x00000000 Write no messages to the log.
LOGINFO 0x00000001 Write informational messages to the log.
LOGWARN 0x00000002 Write warnings to the log.
LOGERR 0x00000004 Write error messages to the log.
LOGPERFMESSAGES 0x00000008 Write performance messages to the log.
UINONE 0x00000000f Do not display the user interface.
UIALL 0x00000010 Display the user interface.

 

dwReserved

Reserved. This parameter must be set to zero.

Return Values

See the table in Return Values for UiCreatePatchPackage.

Remarks

For an example of authoring a .pcp file and using UiCreatePatchPackage to generate a Windows Installer patch package, see the section A Small Update Patching Example.

Creating a patch requires an uncompressed setup image, such as an administrative image or an uncompressed setup image from a CD-ROM. UiCreatePatchPackage does not generate binary patches for files in cabinets.