TraceSetInformation 函式 (evntrace.h)
TraceSetInformation 函式會設定事件追蹤會話設定。
語法
ULONG WMIAPI TraceSetInformation(
CONTROLTRACE_ID TraceId,
[in] TRACE_INFO_CLASS InformationClass,
[in] PVOID TraceInformation,
[in] ULONG InformationLength
);
參數
TraceId
[in] InformationClass
要啟用或停用的信息類別。 類別擷取的資訊包含在事件的擴充數據區段中。 如需您可以啟用的資訊類別清單,請參閱 TRACE_QUERY_INFO_CLASS 列舉。
[in] TraceInformation
信息類別特定數據的指標。 資訊類別會決定此參數的內容。
[in] InformationLength
TraceInformation 緩衝區中數據的大小,以位元組為單位。
傳回值
如果函式成功,傳回值會ERROR_SUCCESS。
如果函式失敗,傳回值就是下列其中一個錯誤碼。
ERROR_BAD_LENGTH
程序發出命令,但命令長度不正確。 如果 InformationLength 參數小於最小大小,就會傳回此錯誤。
ERROR_INVALID_PARAMETER
參數錯誤。
ERROR_NOT_SUPPORTED
不支援此要求。
其他
使用 FormatMessage 取得傳回錯誤的訊息字串。
備註
呼叫 StartTrace 之後呼叫此函式。
如果 InformationClass 參數設定為 TraceStackTracingInfo,則呼叫此函式會啟用指定核心事件的堆棧追蹤。 對此函式的後續呼叫會覆寫啟用堆疊追蹤的先前核心事件清單。 若要停用堆棧追蹤,請將 InformationClass 設定為 TraceStackTracingInfo 和 InformationLength 設定為 0 來呼叫此函式。
事件的擴充數據區段將包含呼叫堆疊。 StackWalk_Event MOF 類別會定義擴充數據的版面配置。
一般而言,在64位電腦上,當不允許頁面錯誤時,您無法在特定內容中擷取核心堆疊。 若要在 x64 上啟用核心堆疊的逐步執行,請將 DisablePagingExecutive
記憶體管理登錄值設定為 1。 登錄 DisablePagingExecutive
值位於下列登錄機碼之下: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management
。
這隻應該為了暫時診斷而完成,因為它會增加系統的記憶體使用量。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 7 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 R2 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | evntrace.h |
程式庫 | Windows 8.1 和 Windows Server 2012 R2 上的 Sechost.lib;Windows 8、Windows Server 2012、Windows 7 和 Windows Server 2008 R2 上的 Advapi32.lib |
Dll | windows 8.1 和 Windows Server 2012 R2 上的 Sechost.dll;Windows 8、Windows Server 2012、Windows 7 和 Windows Server 2008 R2 上的 Advapi32.dll |