Installer 函式參考
若要在應用程式中啟用 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 函式之外,您還可以使用 資料庫函 式一節中所述的資料庫存取函式來管理安裝資料庫中的資訊。
安裝程式結構
此外,安裝資料庫中的某些資訊是使用 安裝程式結構 一節中所述的結構來處理。