共用方式為


處理交易

應用程式寫入器可以使用核心交易管理員 (KTM) 進行次要原始碼變更,以新增交易的檔案和登錄作業。 一般而言,這牽涉到建立交易,並將句柄傳遞至交易資源所提供的其他函式,例如 交易式 NTFS 和交易式註冊表。

KTM 提供讓應用程式參與交易的機制,以及撰寫您自己的交易資源管理員。 有一個函式可讓您建立、管理及處理四個核心對象的類別:交易、交易管理員、資源管理員和登記。 如果您只是使用交易,您只需要使用交易物件並使用下列函式:

千萬不要假設交易是進行中的。 交易可能會因為許多原因而隨時回復。

Windows 會將句柄型介面公開給系統資源。 若要使用作業系統物件,應用程式會先請求物件的控制代碼,然後在後續的函式呼叫中使用這個控制代碼來存取或修改物件。 句柄通常可以在不同的模式中開啟;指定的模式會影響後續函數調用的語意。 例如,由呼叫 CreateFile 開啟且 dwDesiredAccess 旗標設定為 GENERIC_READ 的檔案句柄,不能用於修改檔案的呼叫中。

您可以與 分散式交易協調器 使用者模式資源,例如 SQL 或 MSMQ,以及使用 KTM 的核心模式資源進行協調。 首先,建立 DTC 交易或 System.Transactions 物件,然後呼叫 IKernelTransaction 物件,然後您可以從中取得 KTM 控制代碼。 IKernelTransaction 物件會建立隸屬於 DTC 交易的 KTM 交易。 透過此控制碼,您可以建立交易物件,但使用 DTC 或 System.Transactions傳送交易結果的信號。