DUMP_WRITE回呼函式 (ntdddump.h)
Dump_Write回呼例程會在寫入傾印埠驅動程式之前呼叫。 篩選驅動程式目前可以存取傾印數據。
語法
DUMP_WRITE DumpWrite;
NTSTATUS DumpWrite(
[in] PFILTER_EXTENSION FilterExtension,
[in, out] PLARGE_INTEGER DiskByteOffset,
[in, out] PMDL Mdl
)
{...}
參數
[in] FilterExtension
FILTER_EXTENSION 結構的指標。
[in, out] DiskByteOffset
相對於損毀傾印或休眠目的地分割區的值,以位元組為單位。 篩選驅動程式不應該修改此欄位。
[in, out] Mdl
描述數據緩衝區之 MDL 結構的指標。 如果修改 MDL ,則寫入作業的大小無法變更。
傳回值
如果例程成功,它必須傳回STATUS_SUCCESS。 否則,它必須傳回 Ntstatus.h 中定義的其中一個錯誤狀態值。
備註
篩選驅動程式可以讀取需要寫入的數據。 不過,篩選驅動程式無法寫入緩衝區,因為這可能會變更損毀傾印進程所使用的程式代碼或數據內容。 此外,不允許篩選驅動程式變更數據的大小。
若要安全地修改傾印寫入的數據,篩選驅動程式應該配置次要緩衝區。 緩衝區的大小會是FILTER_INITIALIZATION_DATA的 MaxPagesPerWrite 成員值乘以PAGE_SIZE。 Mdl 所描述之目前緩衝區的數據會複製到次要緩衝區並進行處理。 篩選完成處理次要緩衝區中的傾印數據之後,Mdl 所指向的 MDL 會以次要緩衝區的位址更新。 MDL 中次要緩衝區集的起始位址必須對齊頁面。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 從 Windows Vista 和 Windows Server 2008 開始提供。 |
目標平台 | 桌面 |
標頭 | ntdddump.h (包含 Ntdddump.h) |