共用方式為


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的日期和時間格式為:YYYYY/MM/DD hh::mm::ss。 例如,1999/03/22 15:25:45。 如果數據表包含二進位數據流,則數據流的名稱會位於數據欄位中,而實際數據流會從與數據表同名的子資料夾中擷取該名稱的檔案。

MsiDatabaseExport 從資料庫導出的文字封存盤案是用於版本控制系統,而且不是用來編輯數據的方法。 使用專為該用途而設計的資料庫 API 函式和工具。 請注意,文字封存盤案中的控制字元會轉譯,以避免與檔案分隔符衝突。 如果文本檔包含非 ASCII 數據,則會以數據的代碼頁加上戳記,而且只能匯入該確切代碼頁的資料庫,或匯入中性資料庫。 中性資料庫會設定為匯入檔案的代碼頁。 藉由匯入名為 _ForceCodepage的虛擬數據表,資料庫可以無條件地設定為特定的代碼頁。 這類檔案的格式為:兩個空白行,後面接著一行,其中包含數值代碼頁、製表符分隔符和確切字串:_ForceCodepage

無法從自定義動作呼叫此函式。 從自定義動作呼叫此函式會導致函式失敗。

如果函式失敗,您可以使用 MsiGetLastErrorRecord取得擴充錯誤資訊。

注意

msiquery.h 標頭會根據 UNICODE 預處理器常數的定義,將 MsiDatabaseImport 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows Server 2012、Windows 8、Windows Server 2008 R2 或 Windows 7 上的 Windows Installer 5.0。 Windows Server 2008 或 Windows Vista 上的 Windows Installer 4.0 或 Windows Installer 4.5。 Windows Server 2003 或 Windows XP 上的 Windows Installer
目標平臺 窗戶
標頭 msiquery.h
連結庫 Msi.lib
DLL Msi.dll

另請參閱

Database Management Functions

文字檔封存盤案