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


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

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

Синтаксис

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

Параметры

[in] szProduct

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

[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".
целевая платформа Виндоус
заголовка msi.h
библиотеки Msi.lib
DLL Msi.dll

См. также

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

LookupAccountName

MsiGetComponentPath

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