若要在應用程式中啟用 Windows Installer,您必須使用安裝程式函式。 本主題中的數據表會依類別識別函式。
使用者介面和記錄函式
| 名字 | 描述 |
|---|---|
| MsiSetInternalUI | 啟用安裝程式的內部使用者介面。 |
| MsiSetExternalUI | 啟用外部使用者介面處理程式,以字串格式接收訊息。 |
| MsiSetExternalUIRecord | 啟用外部使用者介面處理程式,以記錄格式接收訊息。 |
| MsiEnableLog | 設定呼叫程式中所有安裝的記錄模式。 |
處理管理功能
| 名字 | 描述 |
|---|---|
| MsiCloseHandle | 關閉開啟的安裝句柄。 |
| MsiCloseAllHandles | 關閉所有開啟的安裝句柄。 請勿用於清除。 |
安裝和設定函式
| 名字 | 描述 |
|---|---|
| MsiAdvertiseProduct | 公告產品。 |
| MsiAdvertiseProductEx | 公告產品。 |
| MsiAdvertiseScript | 將公告文稿檔案複製到指定的位置。 |
| MsiInstallProduct | 安裝或移除應用程式或應用程式套件。 |
| MsiConfigureProduct | 安裝或移除應用程式或應用程式套件。 |
| MsiConfigureProductEx | 安裝或移除應用程式或應用程式套件。 您可以指定產品命令列。 |
| MsiReinstallProduct | 重新安裝或修復安裝。 |
| MsiConfigureFeature | 設定功能的已安裝狀態。 |
| MsiReinstallFeature | 驗證或修復功能。 |
| MsiInstallMissingComponent | 安裝遺漏的元件。 |
| MsiInstallMissingFile | 安裝遺漏的檔案。 |
| MsiNotifySidChange | 使用使用者 SID 的變更通知和更新 Windows Installer 內部資訊。 從 Windows Installer 3.1 開始提供。 |
| MsiProcessAdvertiseScript | 將公告文稿檔案處理到指定的位置。 |
| MsiSourceListAddSource | 在指定的內容中新增或重新排序修補程式或產品的來源。 |
| MsiSourceListAddSourceEx | 在指定的內容中新增或重新排序修補程式或產品的來源。 為不存在於指定內容中的修補程式建立來源清單。 可在 Windows Installer 3.0 中使用。 |
| MsiSourceListClearSource | 拿掉指定內容中產品或修補程式的現有來源。 可在 Windows Installer 3.0 中使用。 |
| MsiSourceListClearAll | 拿掉指定產品實例之特定來源類型的所有現有來源。 |
| MsiSourceListClearAllEx | 拿掉指定產品實例之特定來源類型的所有現有來源。 可在 Windows Installer 3.0 中使用。 |
| MsiSourceListForceResolution | 移除產品或修補程式之目前來源的註冊,其註冊為屬性 「LastUsedSource」。。 此函式不會影響已註冊的來源清單。 |
| MsiSourceListForceResolutionEx | 移除產品或修補程式之目前來源的註冊,其註冊為屬性 「LastUsedSource」。。 此函式不會影響已註冊的來源清單。 可在 Windows Installer 3.0 中使用。 |
| MsiSourceListGetInfo | 擷取特定內容中產品或修補程式的來源清單相關信息。 |
| MsiSourceListSetInfo | 設定指定內容中產品或修補程式的最新使用來源。 可在 Windows Installer 3.0 中使用。 |
| MsiSourceListEnumMediaDisks | 列舉針對修補程式或產品為媒體來源註冊的磁碟清單。 可在 Windows Installer 3.0 中使用。 |
| MsiSourceListAddMediaDisk | 新增或更新已註冊產品或修補程式之媒體來源的磁碟。 可在 Windows Installer 3.0 中使用。 |
| MsiSourceListClearMediaDisk | 拿掉特定內容中產品或修補程式之媒體來源下的現有已註冊磁碟。 可在 Windows Installer 3.0 中使用。 |
| MsiSourceListEnumSources | 列舉指定修補程式或產品之來源清單中的來源。 可在 Windows Installer 3.0 中使用。 |
Component-Specific 函式
| 名字 | 描述 |
|---|---|
| MsiProvideAssembly | 安裝並傳回元件的完整元件路徑。 |
| MsiProvideComponent | 安裝並傳回元件的完整元件路徑。 |
| MsiProvideQualifiedComponent | 安裝並傳回合格元件的完整元件路徑。 |
| MsiProvideQualifiedComponentEx | 安裝並傳回產品所發行之合格元件的完整元件路徑。 |
| MsiGetComponentPath | 將完整路徑或登錄機碼傳回已安裝的元件。 |
| MsiGetComponentPathEx | 傳回用戶帳戶和安裝內容中已安裝元件的完整路徑或登錄機碼。
Windows Installer 4.5 和更早版本:不支援。 |
| MsiLocateComponent | 傳回已安裝元件的完整路徑,但不含產品代碼。 |
| MsiQueryComponentState | 傳回元件的已安裝狀態。 可以查詢目前使用者以外的用戶帳戶下所安裝產品實例的元件。 可在 Windows Installer 3.0 或更新版本中使用。 |
Application-Only 函式
| 名字 | 描述 |
|---|---|
| MsiCollectUserInfo | 從安裝精靈儲存用戶資訊。 |
| MsiUseFeature | 遞增功能的使用計數,並指出安裝狀態。 |
| MsiUseFeatureEx | 遞增功能的使用計數,並指出安裝狀態。 |
| MsiGetProductCode | 使用元件程式代碼傳回產品代碼。 |
系統狀態函式
| 名字 | 描述 |
|---|---|
| MsiEnumProducts | 列舉公告的產品。 |
| MsiEnumProductsEx | 列舉指定內容中公告或已安裝產品的所有實例。 可在 Windows Installer 3.0 或更新版本中使用。 |
| MsiEnumRelatedProducts | 列舉目前已安裝的產品,其具有指定的升級程序代碼。 |
| MsiEnumFeatures | 列舉已發佈的功能。 |
| MsiEnumComponents | 列舉已安裝的元件。 |
| MsiEnumComponentsEx | 列舉用戶帳戶和安裝內容中已安裝的元件。
Windows Installer 4.5 和更早版本:不支援。 |
| MsiEnumClients | 列舉已安裝元件的用戶端。 |
| MsiEnumClientsEx | 列舉用戶帳戶和安裝內容中已安裝元件的用戶端。
Windows Installer 4.5 和更早版本:不支援。 |
| MsiEnumComponentQualifiers | 列舉元件的公告限定符。 |
| MsiQueryFeatureState | 傳回功能的已安裝狀態。 |
| MsiQueryFeatureStateEx | 傳回產品功能的已安裝狀態。 可以查詢目前使用者以外的用戶帳戶下所安裝產品實例的功能。 可在 Windows Installer 3.0 或更新版本中使用。 |
| MsiQueryProductState | 傳回應用程式或應用程式套件的已安裝狀態。 |
| MsiGetFeatureUsage | 傳回功能的使用計量。 |
| MsiGetProductInfo | 傳回已發行和已安裝產品的產品資訊。 |
| MsiGetProductInfoEx | 傳回公告和已安裝產品的產品資訊。 可以擷取目前使用者以外的用戶帳戶所安裝產品實例的相關信息。 可在 Windows Installer 3.0 或更新版本中使用。 |
| MsiGetUserInfo | 傳回已安裝產品的已註冊用戶資訊。 |
產品查詢函式
| 名字 | 描述 |
|---|---|
| MsiOpenProduct | 開啟要與存取資料庫之函式搭配使用的產品。 |
| MsiOpenPackage | 開啟封裝以搭配存取資料庫的函式使用。 |
| MsiOpenPackageEx | 開啟封裝以搭配存取資料庫的函式使用。 |
| MsiIsProductElevated | 檢查產品是否以較高的許可權安裝。 |
| MsiGetProductInfoFromScript | 傳回安裝程式腳本檔案的產品資訊。 |
| MsiGetProductProperty | 擷取產品資料庫中的屬性。 |
| MsiGetShortcutTarget | 檢查快捷方式,並在可用時傳回其產品、功能名稱和元件。 |
| MsiGetFeatureInfo | 傳回功能的描述性資訊。 |
| MsiVerifyPackage | 確認指定的檔案是否為安裝套件。 |
修補函式
| 名字 | 描述 |
|---|---|
| MsiApplyPatch | 叫用安裝並套用修補程式套件。 |
| MsiEnumPatches | 傳回套用至產品之每個修補程式的 GUID,以及套用至產品之每個修補程式的轉換清單。 |
| MsiGetPatchInfo | 傳回修補程式的相關信息。 |
| MsiRemovePatches | 從產品卸載修補程式。 可在 Windows Installer 3.0 中使用。 |
| MsiDeterminePatchSequence | 決定一組修補程式和產品的最佳應用程式順序。 可在 Windows Installer 3.0 中使用。 |
| MsiApplyMultiplePatches | 將一或多個修補程式套用至產品。 可在 Windows Installer 3.0 中使用。 |
| MsiEnumPatchesEx | 列舉在特定內容或所有內容中針對產品套用的所有修補程式。 可在 Windows Installer 3.0 中使用。 |
| MsiGetPatchFileList | 提供 .msp 檔案列表時,此函式會擷取可由 targe 修補程式更新的檔案清單。 可在 Windows Installer 4.0 中使用。 |
| MsiGetPatchInfoEx | 查詢指定修補程式至指定產品之應用程式的相關信息。 可在 Windows Installer 3.0 中使用。 |
| MsiExtractPatchXMLData | 從修補程式擷取資訊。 可在 Windows Installer 3.0 中使用。 |
| MsiDetermineApplicablePatches | 決定更新產品或一組產品所需的最佳修補程式集。 可在 Windows Installer 3.0 中使用。 |
檔案查詢函式
| 名字 | 描述 |
|---|---|
| MsiGetFileHash | 採用檔案的路徑,並傳回該檔案的 128 位哈希。 |
| MsiGetFileSignatureInformation | 採用已數字簽署之檔案的路徑,並傳回檔案的簽署者憑證和哈希。 |
| MsiGetFileVersion | 傳回版本字串和語言字串。 |
交易管理功能
| 名字 | 描述 |
|---|---|
| MsiBeginTransaction | 啟動多封裝安裝的交易處理,並傳回交易的標識碼。 從 Windows Installer 4.5 開始,即可使用此函式。 |
| MsiJoinTransaction | 要求 Windows Installer 讓目前進程成為安裝多套件安裝之交易的擁有者。 從 Windows Installer 4.5 開始,即可使用此函式。 |
| MsiEndTransaction | 認可或復原屬於交易的所有安裝。 從 Windows Installer 4.5 開始,即可使用此函式。 |
資料庫函式
除了先前數據表中所識別的 Windows Installer 函式之外,您還可以使用 Database Functions 一節中所述的數據庫存取函式來作安裝資料庫中的資訊。
安裝程序結構
此外,安裝資料庫中的一些資訊是使用 Installer Structure 一節中所述的結構來處理。