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