Функция MsiSourceListAddSourceExA (msi.h)
Функция MsiSourceListAddSourceEx добавляет или переупорядает набор источников исправления или продукта в указанном контексте. Он также может создать список источников для исправления, которое не существует в указанном контексте.
Синтаксис
UINT MsiSourceListAddSourceExA(
[in] LPCSTR szProductCodeOrPatchCode,
[in, optional] LPCSTR szUserSid,
[in] MSIINSTALLCONTEXT dwContext,
[in] DWORD dwOptions,
[in] LPCSTR szSource,
[in, optional] DWORD dwIndex
);
Параметры
[in] szProductCodeOrPatchCode
Код продукта или 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
Значение dwOptions определяет интерпретацию значения szProductCodeOrPatchCode и тип очищаемых источников. Этот параметр должен быть сочетанием одной из следующих констант MSISOURCETYPE_ и одной из следующих констант MSICODE_ .
[in] szSource
Источник для добавления или перемещения. Этот параметр должен содержать только путь без имени файла. Имя файла уже зарегистрировано как PackageName и может управляться с помощью MsiSourceListSetInfo. Этот аргумент обязателен.
[in, optional] dwIndex
Этот параметр предоставляет новый индекс для источника. Все источники индексируются в списке источников от 1 до N, где N — количество источников в списке. Каждый источник в списке имеет уникальный индекс.
Если вызывается MsiSourceListAddSourceEx с новым источником, а dwIndex имеет значение 0 (ноль), новый источник добавляется к существующему списку. Если параметр dwIndex имеет значение 0 и источник уже существует в списке, обновление в списке не выполняется.
Если метод MsiSourceListAddSourceEx вызывается с новым источником и dwIndex с ненулевым значением меньше, чем число (N), новый источник помещается по указанному индексу, а остальные источники повторно индексируются. Если источник уже существует, он перемещается в указанный индекс, а остальные источники повторно индексируются.
Если вызывается MsiSourceListAddSourceEx с новым источником, а dwIndex задано ненулевое значение, превышающее число источников (N), новый источник добавляется к существующему списку. Если источник уже существует, он перемещается в конец списка, а другие источники повторно индексируются.
Возвращаемое значение
Функция MsiSourceListAddSourceEx возвращает следующие значения.
Значение | Значение |
---|---|
|
У пользователя нет возможности добавлять или перемещать источник. Не указывает, был ли найден продукт или исправление. |
|
Данные конфигурации повреждены. |
|
Не удалось получить доступ к службе установщика Windows. |
|
Источник был вставлен или обновлен. |
|
Указанный продукт неизвестен. |
|
Указанное исправление неизвестно. |
|
Непредвиденный внутренний сбой. |
Комментарии
Администраторы могут изменять установку продукта или экземпляра исправления, существующего в контексте компьютера или в собственном контексте для каждого пользователя (управляемом или неуправляемом). Они могут изменять установку экземпляра продукта или исправления, который существует в контексте, управляемом пользователем. Администраторы не могут изменять установку другого пользователя экземпляра продукта или исправления, который существует в неуправляемом контексте этого другого пользователя.
Пользователи, не являющиеся администраторами, не могут изменять установку экземпляра продукта или исправления, существующего в контексте пользователя другого пользователя (управляемого или неуправляемого). Они могут изменять установку продукта или экземпляра исправления, который существует в собственном контексте для каждого пользователя. Они могут изменять установку продукта или экземпляра исправлений в контексте компьютера или в собственном контексте, управляемом пользователем, только если им разрешен поиск продукта или источника исправлений. Пользователям можно включить поиск источников, задав политику. Дополнительные сведения см. в разделах Политики DisableBrowse, AllowLockdownBrowse и AlwaysInstallElevated .
Примечание
Заголовок msi.h определяет MsiSourceListAddSourceEx в качестве псевдонима, который автоматически выбирает версию 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. |
Целевая платформа | Windows |
Header | msi.h |
Библиотека | Msi.lib |
DLL | Msi.dll |
См. также раздел
Не поддерживается в установщике Windows 2.0 и более ранних версий