Функция MsiDatabaseApplyTransformA (msiquery.h)
Функция MsiDatabaseApplyTransform применяет преобразование к базе данных.
Синтаксис
UINT MsiDatabaseApplyTransformA(
[in] MSIHANDLE hDatabase,
[in] LPCSTR szTransformFile,
[in] int iErrorConditions
);
Параметры
[in] hDatabase
Обработка базы данных, полученной из MsiOpenDatabase преобразования.
[in] szTransformFile
Указывает имя применяемого файла преобразования.
[in] iErrorConditions
Условия ошибки, которые следует отключить. Этот параметр представляет собой битовое поле, которое может содержать следующие биты.
Условие ошибки | Значение |
---|---|
|
Добавление строки, которая уже существует. |
|
Удаление строки, которая не существует. |
|
Добавление таблицы, которая уже существует. |
|
Удаление таблицы, которая не существует. |
|
Обновление строки, которая не существует. |
|
Страницы кода преобразования и базы данных не совпадают и не имеют нейтральной кодовой страницы. |
|
Создайте временную таблицу _TransformView. |
Возвращаемое значение
Функция msiDatabaseApplyTransform возвращает одно из следующих значений:
Замечания
Функция MsiDatabaseApplyTransform задерживает преобразование таблиц до тех пор, пока не потребуется. Все добавляемые или удаленные таблицы обрабатываются немедленно. Однако изменения существующей таблицы задерживаются до загрузки таблицы или фиксации базы данных.
Ошибка возникает, если msiDatabaseApplyTransform вызывается, когда таблицы уже загружены и сохранены в хранилище.
Так как разделитель списка для преобразований, источников и исправлений является точкой с запятой, этот символ не должен использоваться для имен файлов или путей.
Эту функцию нельзя вызвать из пользовательских действий. Вызов этой функции из пользовательского действия приводит к сбою функции.
Если функция завершается ошибкой, можно получить расширенные сведения об ошибке с помощью MsiGetLastErrorRecord.
Заметка
Заголовок msiquery.h определяет MsiDatabaseApplyTransform в качестве псевдонима, который автоматически выбирает версию 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 |
целевая платформа | Виндоус |
заголовка | msiquery.h |
библиотеки |
Msi.lib |
DLL | Msi.dll |