PETW_BUFFER_CALLBACK回呼函式 (evntrace.h)
ProcessTrace將叫用之 BufferCallback 的函式定義。
語法
PETW_BUFFER_CALLBACK PetwBufferCallback;
BOOL PetwBufferCallback(
const ETW_BUFFER_HEADER *Buffer,
ULONG BufferSize,
const ETW_BUFFER_CALLBACK_INFORMATION *ConsumerInfo,
void *CallbackContext
)
{...}
參數
Buffer
原始緩衝區資料的指標,其開頭為 ETW_BUFFER_HEADER 結構,後面接著事件資料。
根據預設,此緩衝區僅適用于回呼傳回為止。 若要在回呼傳回之後使用緩衝區,請呼叫 ProcessTraceBufferIncrementReference。 這會將緩衝區保持在可用狀態,直到您呼叫 ProcessTraceBufferDecrementReference 為止。
ProcessTrace 將不會傳回,直到所有這類緩衝區參考都遞減為止。
BufferSize
所提供 緩衝區的大小。
ConsumerInfo
包含處理會話目前狀態的相關資訊。
CallbackContext
使用者提供的內容,ETW_OPEN_TRACE_OPTIONS 。BufferCallbackCoNtext。
傳回值
如果 為 TRUE,處理將會繼續。 如果 為 FALSE,追蹤處理將會停止, 而 ProcessTrace 將會傳回。
需求
最低支援的用戶端 | Windows 2000 專業版 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows 2000 Server [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | evntrace.h |
程式庫 | Windows 8.1 和 Windows Server 2012 R2 上的 Sechost.lib;Windows 8、Windows Server 2012、Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista 和 Windows XP 上的 Advapi32.lib |
Dll | Windows 8.1和 Windows Server 2012 R2 上的 Sechost.dll;Windows 8、Windows Server 2012、Windows 7、Windows Server 2008 R2、Windows Server 2008、Windows Vista 和 Windows XP 上的 Advapi32.dll |