Функция MsiSourceListEnumSourcesA (msi.h)
Функция MsiSourceListEnumSources перечисляет источники в исходном списке указанного исправления или продукта.
Синтаксис
UINT MsiSourceListEnumSourcesA(
[in] LPCSTR szProductCodeOrPatchCode,
[in, optional] LPCSTR szUserSid,
[in] MSIINSTALLCONTEXT dwContext,
[in] DWORD dwOptions,
[in] DWORD dwIndex,
[in, optional] LPSTR szSource,
[in, out, optional] LPDWORD pcchSource
);
Параметры
[in] szProductCodeOrPatchCode
ProductCode или GUID исправления продукта или исправления. Используйте строку, завершаемую значением NULL. Если строка длиннее 39 символов, функция завершается ошибкой и возвращает ERROR_INVALID_PARAMETER. Этот параметр не может быть значение NULL.
[in, optional] szUserSid
Строковый идентификатор безопасности, указывающий учетную запись пользователя, содержащую продукт или исправление. Идентификатор безопасности не проверяется или не разрешается. Неверный идентификатор безопасности может возвращать ERROR_UNKNOWN_PRODUCT или ERROR_UNKNOWN_PATCH. При ссылке на контекст компьютера szUserSID необходимо null и dwContext должен быть MSIINSTALLCONTEXT_MACHINE.
[in] dwContext
Контекст экземпляра продукта или исправления. Этот параметр может содержать одно из следующих значений.
[in] dwOptions
Значение
[in] dwIndex
Индекс извлекаемого источника. Этот параметр должен иметь значение 0 (ноль) для первого вызова функции MsiSourceListEnumSources, а затем увеличивается для последующих вызовов, пока функция не возвращает ERROR_NO_MORE_ITEMS. Индекс следует увеличить, только если предыдущий вызов вернулся ERROR_SUCCESS.
[in, optional] szSource
Указатель на буфер, получающий путь к источнику, который перечисляется. Этот буфер должен быть достаточно большим, чтобы содержать полученное значение. Если буфер слишком мал, функция возвращает ERROR_MORE_DATA и задает *pcchSource к числу TCHAR в значении, не включая завершающий символ NULL.
Если для
Если szSource и pcchSource задано значение null NULL, функция возвращает ERROR_SUCCESS, если значение существует, не извлекая значение.
[in, out, optional] pcchSource
Указатель на переменную, указывающую количество
Этот параметр можно задать null только в том случае, если szSource также NULL, в противном случае функция возвращает ERROR_INVALID_PARAMETER.
Возвращаемое значение
Функция MsiSourceListEnumSources возвращает следующие значения.
Ценность | Значение |
---|---|
|
У пользователя нет возможности читать указанный исходный список. Это не указывает, найден ли продукт или исправление. |
|
Данные конфигурации повреждены. |
|
Недопустимый параметр передается функции. |
|
Предоставленный буфер недостаточно для хранения запрошенных данных. |
|
В указанном списке больше нет источников для перечисления. |
|
Источник успешно перечисляется. |
|
Указанный исправление не устанавливается на компьютере в указанных контекстах. |
|
Указанный продукт не установлен на компьютере в указанных контекстах. |
|
Непредвиденный внутренний сбой. |
Замечания
При выполнении нескольких вызовов MsiSourceListEnumSources для перечисления всех источников для одного экземпляра продукта каждый вызов должен выполняться из одного потока.
Администратор может перечислять неуправляемые и управляемые установки для каждого пользователя, установки на компьютеры и управляемые установки для каждого пользователя. Администратор не может перечислять неуправляемые установки для других пользователей. Неадминистрированные пользователи могут перечислять только собственные неуправляемые и управляемые установки и установки на компьютер.
Заметка
Заголовок msi.h определяет MsiSourceListEnumSources в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Установщик 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 3.0 или более поздней версии в Windows Server 2003 или Windows XP. Сведения о минимальном пакете обновления Windows, требуемом версией установщика Windows, см. в разделе "Требования к установщику Windows Run-Time". |
целевая платформа | Виндоус |
заголовка | msi.h |
библиотеки |
Msi.lib |
DLL | Msi.dll |
См. также
контекста установки