Функция MsiSetTargetPathA (msiquery.h)
Функция MsiSetTargetPath задает полный целевой путь к папке в таблице Каталог.
Синтаксис
UINT MsiSetTargetPathA(
[in] MSIHANDLE hInstall,
[in] LPCSTR szFolder,
[in] LPCSTR szFolderPath
);
Параметры
[in] hInstall
Дескриптор установки, предоставленной пользовательскому действию DLL или полученной через MsiOpenPackage, MsiOpenPackageEx или MsiOpenProduct.
[in] szFolder
Указывает идентификатор папки. Это первичный ключ в таблице Directory.
[in] szFolderPath
Указывает полный путь к папке, заканчивающийся разделителем каталога.
Возвращаемое значение
Функция MsiSetTargetPath возвращает следующие значения:
Комментарии
Функция MsiSetTargetPath изменяет спецификацию пути для целевого каталога с именем в таблице каталогов в памяти. Кроме того, спецификации пути для всех других объектов пути в таблице, которые являются подчиненными или эквивалентными измененному пути, обновляются с учетом изменений. Свойства для каждого затронутого пути также обновляются.
MsiSetTargetPath завершается сбоем, если выбранный каталог доступен только для чтения.
Если в этой функции возникает ошибка, все обновленные пути и свойства отменить изменения к своим предыдущим значениям. Таким образом, ошибки, возвращаемые этой функцией, безопасно рассматривать как нефатальные.
Не пытайтесь настроить целевой путь, если компоненты, использующие эти пути, уже установлены для текущего пользователя или для другого пользователя. Проверьте свойство ProductState перед вызовом MsiSetTargetPath , чтобы определить, установлен ли продукт, содержащий этот компонент.
См. статью Вызов функций базы данных из программ.
В случае сбоя функции можно получить расширенные сведения об ошибке с помощью MsiGetLastErrorRecord.
Примечание
Заголовок msiquery.h определяет MsiSetTargetPath в качестве псевдонима, который автоматически выбирает версию 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 |
Header | msiquery.h |
Библиотека | Msi.lib |
DLL | Msi.dll |