Поделиться через


UiCreatePatchPackageEx (Patchwiz.dll)

Функция UiCreatePatchPackageEx принимает файл создания пакета (PCP-файл) и создает пакет исправлений установщика Windows (MSP-пакет). Вызов Msimsp.exe — рекомендуемый метод для использования Patchwiz.dll.

Функция 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 (MSP-файл). Этот параметр может иметь значение NULL или пустую строку, но не может быть пропущен. Если он имеет значение NULL или пустую строку, функция использует значение PatchOutputPath в таблице свойств (Patchwiz.dll).

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 см. в разделе Пример исправления небольшого обновления.

Для создания исправления требуется несжатый образ установки, например административный или несжатый образ установки с компакт-диска. UiCreatePatchPackage не создает двоичные исправления для файлов в шкафах.