Функция MsiSourceListForceResolutionA (msi.h)

Функция MsiSourceListForceResolution заставляет установщик выполнять поиск в списке источников допустимого источника продукта при следующем запросе источника. Например, когда установщик выполняет установку или переустановку или когда ему требуется путь для компонента, который настроен для запуска из источника.

Синтаксис

UINT MsiSourceListForceResolutionA(
  [in] LPCSTR szProduct,
  [in] LPCSTR szUserName,
  [in] DWORD  dwReserved
);

Параметры

[in] szProduct

Код продукта для изменения.

[in] szUserName

Имя пользователя для установки на пользователя. Имя пользователя всегда должно быть в формате DOMAIN\USERNAME (или MACHINENAME\USERNAME для локального пользователя).

Пустая строка или ЗНАЧЕНИЕ NULL для установки на отдельный компьютер.

[in] dwReserved

Зарезервировано для последующего использования. Это значение должно быть равно 0.

Возвращаемое значение

Функция MsiSourceListForceResolution возвращает следующие значения.

Значение Значение
ERROR_ACCESS_DENIED
Вызывающий объект не имеет достаточного доступа для принудительного разрешения для продукта.
ERROR_BAD_CONFIGURATION
Данные конфигурации повреждены.
ERROR_BAD_USER_NAME
Указанный пользователь не является допустимым пользователем.
ERROR_FUNCTION_FAILED
Не удалось выполнить функцию.
ERROR_INSTALL_SERVICE_FAILURE
Не удалось получить доступ к службе установки.
ERROR_INVALID_PARAMETER
В функцию передан недопустимый параметр.
ERROR_SUCCESS
Функция выполнена успешно.
ERROR_UNKNOWN_PRODUCT
Указанный продукт неизвестен.

Комментарии

Администратор может изменять установки для каждого компьютера, собственные неуправляемые установки для каждого пользователя и управляемые установки для каждого пользователя. Неадминистратор может изменять только установки для отдельных компьютеров и собственные (управляемые или неуправляемые) установки для каждого пользователя.

Если имя пользователя является пустой строкой или значением NULL, функция работает при установке продукта на отдельный компьютер. В этом случае, если продукт установлен только для каждого пользователя, функция возвращает ERROR_UNKNOWN_PRODUCT.

Если имя пользователя не является пустой строкой или значением NULL, оно указывает имя пользователя, установка продукта которого изменена. Если имя пользователя является текущим именем пользователя, функция сначала пытается изменить неуправляемую установку продукта. Если неуправляемая установка продукта не найдена, функция пытается изменить управляемую установку продукта для каждого пользователя. Если не удается найти управляемые или неуправляемые установки продукта для каждого пользователя, функция возвращает ERROR_UNKNOWN_PRODUCT, даже если продукт установлен для каждого компьютера.

Эта функция не может изменить неуправляемую установку для любого пользователя, кроме текущего пользователя. Если имя пользователя не является пустой строкой или значением NULL, но не является текущим пользователем, функция проверяет только управляемую установку продукта для указанного пользователя. Если продукт не установлен как управляемый для каждого пользователя для указанного пользователя, функция возвращает ERROR_UNKNOWN_PRODUCT, даже если продукт установлен на каждом компьютере.

Примечание

Заголовок msi.h определяет MsiSourceListForceResolution в качестве псевдонима, который автоматически выбирает версию 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 Server 2003 или Windows XP. Сведения о минимальном пакете обновления Windows, необходимом для версии установщика Windows, см. в разделе Требования к установщику Windows Run-Time.
Целевая платформа Windows
Header msi.h
Библиотека Msi.lib
DLL Msi.dll

См. также раздел

Контекст установки

LookupAccountName

MsiGetComponentPath

Устойчивость источника