Функция MsiGetPatchInfoExW (msi.h)
Функция msiGetPatchInfoEx запрашивает сведения о применении исправления к указанному экземпляру продукта.
Синтаксис
UINT MsiGetPatchInfoExW(
[in] LPCWSTR szPatchCode,
[in] LPCWSTR szProductCode,
[in] LPCWSTR szUserSid,
[in] MSIINSTALLCONTEXT dwContext,
[in] LPCWSTR szProperty,
[out, optional] LPWSTR lpValue,
[in, out] LPDWORD pcchValue
);
Параметры
[in] szPatchCode
Строка, завершающаяся значением NULL, содержащая GUID исправления. Этот параметр не может быть значение NULL.
[in] szProductCode
Строка, завершающаяся значением NULL, содержащая guid ProductCode
[in] szUserSid
Строка, завершающая значение NULL, указывающая идентификатор безопасности (SID), в котором существует экземпляр запрашиваемого исправления. Использование значения NULL
[in] dwContext
Ограничивает перечисление неуправляемой, управляемой пользователем или контекстом на компьютере. Этот параметр может быть одним из следующих значений.
[in] szProperty
Строка, завершающая значение NULL, указывающая значение свойства для извлечения. Параметр szProperty может быть одним из следующих:
Имя | Значение |
---|---|
|
Возвращает кэшированный файл исправлений, который использует продукт. |
|
Возвращает набор преобразований исправлений, примененных к продукту последней установкой исправлений. Это значение может быть недоступно для приложений, не управляемых пользователем, если пользователь не вошел в систему. |
|
Возвращает последний раз, когда этот продукт получил службу. Значение этого свойства заменяется при каждом применении исправления или удалении из продукта или параметра /v Command-Line, используется для восстановления продукта. Если продукт не получил исправления или исправления этого свойства содержит время установки этого продукта на этом компьютере. |
|
Возвращает значение "1", если исправление помечено как возможное для удаления из продукта. В этом случае установщик по-прежнему может блокировать удаление, если это исправление требуется другим исправлением, которое не может быть удалено. |
|
Возвращает значение "1", если это исправление в настоящее время применяется к продукту. Возвращает значение "2", если это исправление заменено другим исправлением. Возвращает значение "4", если это исправление устарело. Эти значения соответствуют константам, которые использует параметр dwFilter MsiEnumPatchesEx. |
|
Получите зарегистрированное отображаемое имя исправления. Для исправлений, не включающих свойство DisplayName в таблицу |
|
Получите URL-адрес зарегистрированной информации о поддержке для исправления. Для исправлений, которые не включают свойство MoreInfoURL в таблицу |
[out, optional] lpValue
Этот параметр является указателем на буфер, который получает значение свойства. Этот буфер должен быть достаточно большим, чтобы содержать информацию. Если буфер слишком мал, функция возвращает ERROR_MORE_DATA и задает *pcchValue число TCHAR в значении свойства, а не включая завершающий символ NULL.
Если для lpValue задано значение NULL , а pcchValue задан допустимый указатель, функция возвращает ERROR_SUCCESS и задает *pcchValue к числу TCHAR в значении, не включая завершающий null символ. Затем функцию можно вызвать еще раз, чтобы получить значение, с помощью буфера lpValue достаточно большого размера, чтобы содержать *pcchValue + 1 символов.
Если lpValue и pcchValue задано значение NULL, функция возвращает ERROR_SUCCESS, если значение существует без получения значения.
[in, out] pcchValue
При вызове функции этот параметр должен быть указателем на переменную, указывающую количество TCHAR в буфере lpValue. При возврате функции этот параметр имеет размер запрошенного значения, копирует ли функция значение в указанный буфер. Размер возвращается в виде числа TCHAR в запрошенном значении, не включая завершающийся символ NULL.
Этот параметр можно задать NULL только в том случае, если lpValue также NULL. В противном случае функция возвращает ERROR_INVALID_PARAMETER.
Возвращаемое значение
Функция MsiGetPatchInfoEx возвращает следующие значения.
Возвращаемый код | Описание |
---|---|
|
Функция не пытается получить доступ к ресурсу с недостаточными привилегиями. |
|
Данные конфигурации повреждены. |
|
Функция завершается ошибкой, и ошибка не определена в других кодах ошибок. |
|
Недопустимый параметр передается функции. |
|
Значение не помещается в предоставленный буфер. |
|
Исправление успешно перечислено. |
|
Продукт, szProduct, не установлен на компьютере. |
|
Свойство не распознается. |
|
Исправление не распознается. |
Замечания
Установщик Windows 2.0: не поддерживается. Эта функция доступна начиная с установщика Windows версии 3.0.
Пользователь может запрашивать данные исправления для любого видимого экземпляра продукта. Группа администраторов может запрашивать данные исправления для любого экземпляра продукта и любого пользователя на компьютере. Не все значения гарантированно будут доступны для отдельных пользователей, не управляемых приложений, если пользователь не вошел в систему.
Заметка
Заголовок msi.h определяет MsiGetPatchInfoEx как псевдоним, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОДа. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Установщик Windows 5.0 в Windows Server 2012, Windows 8, Windows Server 2008 R2 или Windows 7. Установщик Windows 4.0 или установщик Windows 4.5 в Windows Server 2008 или Windows Vista. Сведения о минимальном пакете обновления Windows, требуемом версией установщика Windows, см. в разделе "Требования к установщику Windows Run-Time". |
целевая платформа | Виндоус |
заголовка | msi.h |
библиотеки |
Msi.lib |
DLL | Msi.dll |