FltCommitComplete 函式 (fltkernel.h)
FltCommitComplete 例程會認可TRANSACTION_NOTIFY_COMMIT通知。
語法
NTSTATUS FLTAPI FltCommitComplete(
[in] PFLT_INSTANCE Instance,
[in] PKTRANSACTION Transaction,
[in, optional] PFLT_CONTEXT TransactionContext
);
參數
[in] Instance
呼叫端的不透明實例指標。
[in] Transaction
交易的不透明交易指標。
[in, optional] TransactionContext
迷你篩選驅動程式交易內容的指標。 這個參數是選擇性的,而且可以是 NULL。
傳回值
FltCommitComplete 會傳回STATUS_SUCCESS或適當的 NTSTATUS 值,如下所示:
傳回碼 | Description |
---|---|
|
迷你篩選驅動程式未在交易上設定內容。 這是錯誤碼。 |
備註
此例程可在 Windows Vista 和更新版本上使用。
在交易中登記的迷你篩選驅動程式可以在交易進行認可時收到TRANSACTION_NOTIFY_COMMIT通知。 若要將通知傳送至迷你篩選驅動程式,篩選管理員會呼叫迷你篩選驅動程式的 TransactionNotificationCallback 例程。 迷你篩選驅動程式會以下列兩種方式之一認可此通知:
- 迷你篩選驅動程式的 TransactionNotificationCallback 例程會執行任何所需的處理,並傳回STATUS_SUCCESS。 在此情況下,迷你篩選驅動程式不會呼叫 FltCommitComplete。
- 迷你篩選驅動程式的 TransactionNotificationCallback 例程會將任何所需的處理張貼到背景工作線程,並傳回STATUS_PENDING。 以異步方式執行處理之後,迷你篩選驅動程式的工作例程必須呼叫 FltCommitComplete ,以指出它已完成此處理。 如果迷你篩選驅動程式的工作例程未呼叫 FltCommitComplete,核心交易管理員就無法完成交易認可作業。
若要在交易中登記,請呼叫 FltEnlistInTransaction。
若要配置新的交易內容,請呼叫 FltAllocateContext。
若要擷取交易內容,請呼叫 FltGetTransactionContext。
若要刪除交易內容,請呼叫 FltDeleteTransactionContext 或 FltDeleteContext。
若要設定交易內容,請呼叫 FltSetTransactionContext。
規格需求
需求 | 值 |
---|---|
目標平台 | Universal |
標頭 | fltkernel.h (包含 Fltkernel.h) |
程式庫 | Fltmgr.lib |
IRQL | PASSIVE_LEVEL |