Функция MsiDatabaseImportA (msiquery.h)
Функция MsiDatabaseImport импортирует текстовый архивный файл установщика в открытую таблицу базы данных.
Синтаксис
UINT MsiDatabaseImportA(
[in] MSIHANDLE hDatabase,
[in] LPCSTR szFolderPath,
[in] LPCSTR szFileName
);
Параметры
[in] hDatabase
Дескриптор базы данных, полученной из MsiOpenDatabase.
[in] szFolderPath
Указывает путь к папке, содержащей архивные файлы.
[in] szFileName
Указывает имя импортируемого файла.
Возвращаемое значение
Функция MsiDatabaseImport возвращает одно из следующих значений:
Комментарии
При использовании функции MsiDatabaseImport для импорта текстовой архивной таблицы с именем _SummaryInformation в базу данных установщика записывается поток "05SummaryInformation". Этот поток содержит стандартные свойства, которые можно просматривать с помощью windows Обозреватель и определяются COM. Строки таблицы записываются в поток свойств в виде пар идентификаторов свойств и соответствующих значений данных. См. раздел Набор свойств потока сводной информации. Дата и время в _SummaryInformation имеют формат ГГГГ/ММ/ДД чч::мм::сс. Например, 1999/03/22 15:25:45. Если таблица содержит двоичные потоки, имя потока находится в поле данных, а фактический поток извлекается из файла с таким именем во вложенной папке с тем же именем, что и таблица.
Текстовые архивные файлы, экспортированные msiDatabaseExport из базы данных, предназначены для использования с системами управления версиями и не предназначены для использования в качестве средства редактирования данных. Используйте функции и средства API базы данных, предназначенные для этой цели. Обратите внимание, что управляющие символы в текстовых архивных файлах переводятся во избежание конфликтов с разделителями файлов. Если текстовый архивный файл содержит данные, отличные от ASCII, он помечен кодовой страницей данных и может быть импортирован только в базу данных этой точной кодовой страницы или в нейтральную базу данных. Нейтральным базам данных присваиваются кодовая страница импортированного файла. Для базы данных можно безоговорочно задать определенную кодовую страницу, импортировав псевдо-таблицу с именем _ForceCodepage. Формат такого файла: две пустые строки, за которой следует строка, содержащая числовую кодовую страницу, разделитель табуляции и точную строку: _ForceCodepage
Эту функцию нельзя вызвать из пользовательских действий. Вызов этой функции из настраиваемого действия приводит к сбою функции.
В случае сбоя функции можно получить расширенные сведения об ошибке с помощью MsiGetLastErrorRecord.
Примечание
Заголовок msiquery.h определяет MsiDatabaseImport в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Минимальная версия клиента | Установщик 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 |