共用方式為


msiEndTransaction 函式 (msi.h)

MsiEndTransaction 函式可以認可或復原屬於 MsiBeginTransaction 函式所開啟之交易的所有安裝。 此函式應該由交易的目前擁有者呼叫。

Windows Installer 4.0 和更早版本不支援。 此函式從 Windows Installer 4.5 開始可供使用。

語法

UINT MsiEndTransaction(
  [in] DWORD dwTransactionState
);

參數

[in] dwTransactionState

此參數的值會決定安裝程式是否認可或復原屬於交易的所有安裝。 此值可以是下列其中一項。

意義
MSITRANSACTIONSTATE_ROLLBACK
執行 復原安裝 ,以復原屬於 MsiBeginTransaction 函式所開啟之交易的系統變更。
MSITRANSACTIONSTATE_COMMIT
認可屬於交易之系統的所有變更。 執行任何 認可自定義動作 ,並認可至系統對 Win32 或 Common Language Runtime 元件所做的任何變更。 刪除復原腳本,且使用此選項之後,交易的變更就無法再復原復原 安裝

傳回值

MsiEndTransaction 函式會傳回下列值。

意義
ERROR_ACCESS_DENIED
交易只能由目前的擁有者結束。
ERROR_INSTALL_FAILURE
無法完成屬於交易的安裝。
ERROR_INSTALL_ALREADY_RUNNING
屬於交易的安裝仍在進行中。
ERROR_ROLLBACK_DISABLED
屬於交易的安裝未完成。 在安裝期間, DisableRollback 動作已停用套件的 復原安裝 。 安裝程式會將安裝復原的恢復點復原到停用,而函式會傳回此錯誤。

規格需求

需求
最低支援的用戶端 Windows Server 2012、Windows 8、Windows Server 2008 R2 或 Windows 7 上的 Windows Installer 5.0。 Windows Vista、Windows XP、Windows Server 2003 和 Windows Server 2008 上的 Windows Installer 4.5。 如需 Windows Installer 版本所需的最低 Windows Service Pack 相關信息,請參閱 Windows Installer Run-Time 需求。
目標平台 Windows
標頭 msi.h
程式庫 Msi.lib
Dll Msi.dll

另請參閱

多個套件安裝